Camera application user interfaces

Efficient camera user interfaces on electronic devices streamline mode switching and settings adjustment, addressing inefficiencies in existing interfaces by reducing keystrokes and conserving battery power through concurrent display and dynamic adjustments.

WO2026156186A1PCT designated stage Publication Date: 2026-07-23APPLE INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
APPLE INC
Filing Date
2026-01-15
Publication Date
2026-07-23

AI Technical Summary

Technical Problem

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

Method used

Implementing a method for displaying a camera user interface that concurrently shows a live preview and mode selection affordances, allowing for efficient switching between photo and video capture modes, and dynamically adjusting settings based on user input, such as zoom level and camera orientation, to reduce cognitive burden and conserve power.

Benefits of technology

The solution provides faster, more efficient camera user interfaces that reduce user interaction, conserve battery power, and enhance the human-machine interface by minimizing keystrokes and optimizing device energy usage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure US2026011468_23072026_PF_FP_ABST
    Figure US2026011468_23072026_PF_FP_ABST
Patent Text Reader

Abstract

The present disclosure generally relates to user interfaces for a camera application and techniques related thereto, including methods for readily switching between camera modes and / or accessing additional mode controls, methods for maintaining certain camera settings when switching between camera modes, methods for changing zoom levels of one or more cameras, based on a change in the number of subjects, methods for capturing media concurrently with two sets of cameras, methods for displaying a camera user interface with a mode switching control that expands, methods for displaying a camera control panel overlaid on camera user interface, methods for displaying a control for adjusting a camera zoom level that shifts positions, and methods for displaying a camera user interface that concurrently includes one or more controls for changing a zoom level and one or more controls for changing a capture orientation.
Need to check novelty before this filing date? Find Prior Art

Description

Attorney Docket No.: P71055W01 / 77770000-858501CAMERA APPLICATION USER INTERFACESCROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application claims priority to U.S. Patent Application No. 19 / 386,020, entitled “CAMERA APPLICATION USER INTERFACES,” filed on November 11, 2025, and to U.S. Provisional Patent Application No. 63 / 877,973, entitled “CAMERA APPLICATION USER INTERFACES,” filed on September 8, 2025, and to U.S. Provisional Patent Application No. 63 / 819,384, entitled “CAMERA APPLICATION USER INTERFACES,” filed on June 6, 2025, and to U.S. Provisional Patent Application No.63 / 808,574, entitled “CAMERA APPLICATION USER INTERFACES,” filed on May 19, 2025, and to U.S. Provisional Patent Application No. 63 / 768,810, entitled “CAMERA APPLICATION USER INTERFACES,” filed on March 7, 2025, and to U.S. Provisional Patent Application No. 63 / 746,911, entitled “CAMERA APPLICATION USER INTERFACES,” filed on January 17, 2025. The contents of each of which are hereby incorporated by reference in their entirety for all purposes.FIELD

[0002] The present disclosure relates generally to computer user interfaces, and more specifically to user interfaces for a camera application and techniques related thereto.BACKGROUND

[0003] Computer systems, including portable computer systems such as smartphones, can be equipped with one or more cameras and software applications for use of such cameras to capture images and videos.BRIEF SUMMARY

[0004] Some techniques for displaying camera user interfaces using electronic devices, however, are generally cumbersome and inefficient. For example, some existing techniques use a complex and time-consuming user interface, which may include multiple key presses or keystrokes. This can be particularly relevant to camera user interfaces, which often provide a wide range of functions, options, and modes. Existing techniques require more time than necessary, wasting user time and device energy. This latter consideration is particularly important in battery-operated devices.11019401Attorney Docket No.: P71055W01 / 77770000-858501

[0005] Accordingly, the present technique provides electronic devices with faster, more efficient methods and interfaces for displaying camera user interfaces. Such methods and interfaces optionally complement or replace other methods for displaying camera user interfaces. Such methods and interfaces reduce the cognitive burden on a user and produce a more efficient human-machine interface. For battery-operated computing devices, such methods and interfaces conserve power and increase the time between battery charges.

[0006] In accordance with some embodiments, a method performed at a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras is described. The method includes: displaying, via the one or more display generation components, a camera user interface that includes concurrently displaying: a live preview of content from the one or more cameras; and a camera mode selection affordance that includes a plurality of options including concurrently displaying: a first set of one or more mode options for switching between photo capture mode and video capture mode; a mode switcher option for selecting additional modes for the camera user interface; while displaying the camera user interface, detecting, via the one or more input devices, a selection input directed to the camera user interface; and in response to detecting the selection input: in accordance with a determination that the selection input is directed to the mode switcher option, displaying a second set of mode options that correspond to different modes; and in accordance with a determination that the selection input is directed to the first set of one or more mode options, switching the camera user interface between the photo mode and the video capture mode.

[0007] In accordance with some embodiments, a non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras is described. The one or more programs including instructions for: displaying, via the one or more display generation components, a camera user interface that includes concurrently displaying: a live preview of content from the one or more cameras; and a camera mode selection affordance that includes a plurality of options including concurrently displaying: a first set of one or more mode options for switching between photo capture mode and video capture mode; a mode switcher option for selecting additional modes for the camera user interface; while displaying the camera user interface, detecting, via the one or more input devices, a selection21019401Attorney Docket No.: P71055W01 / 77770000-858501input directed to the camera user interface; and in response to detecting the selection input: in accordance with a determination that the selection input is directed to the mode switcher option, displaying a second set of mode options that correspond to different modes; and in accordance with a determination that the selection input is directed to the first set of one or more mode options, switching the camera user interface between the photo mode and the video capture mode.

[0008] In accordance with some embodiments, a transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras is described. The one or more programs including instructions for: displaying, via the one or more display generation components, a camera user interface that includes concurrently displaying: a live preview of content from the one or more cameras; and a camera mode selection affordance that includes a plurality of options including concurrently displaying: a first set of one or more mode options for switching between photo capture mode and video capture mode; a mode switcher option for selecting additional modes for the camera user interface; while displaying the camera user interface, detecting, via the one or more input devices, a selection input directed to the camera user interface; and in response to detecting the selection input: in accordance with a determination that the selection input is directed to the mode switcher option, displaying a second set of mode options that correspond to different modes; and in accordance with a determination that the selection input is directed to the first set of one or more mode options, switching the camera user interface between the photo mode and the video capture mode.

[0009] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras is described. The computer system includes one or more processors and memory storing one or more programs configured to be executed by the one or more processors. The one or more programs including instructions for: displaying, via the one or more display generation components, a camera user interface that includes concurrently displaying: a live preview of content from the one or more cameras; and a camera mode selection affordance that includes a plurality of options including concurrently displaying: a first set of one or more mode options for switching between photo capture mode and video31019401Attorney Docket No.: P71055W01 / 77770000-858501capture mode; a mode switcher option for selecting additional modes for the camera user interface; while displaying the camera user interface, detecting, via the one or more input devices, a selection input directed to the camera user interface; and in response to detecting the selection input: in accordance with a determination that the selection input is directed to the mode switcher option, displaying a second set of mode options that correspond to different modes; and in accordance with a determination that the selection input is directed to the first set of one or more mode options, switching the camera user interface between the photo mode and the video capture mode.

[0010] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras is described. The computer system includes: means for displaying, via the one or more display generation components, a camera user interface that includes concurrently displaying: a live preview of content from the one or more cameras; and a camera mode selection affordance that includes a plurality of options including concurrently displaying: a first set of one or more mode options for switching between photo capture mode and video capture mode; a mode switcher option for selecting additional modes for the camera user interface; means for, while displaying the camera user interface, detecting, via the one or more input devices, a selection input directed to the camera user interface; and means for, in response to detecting the selection input: in accordance with a determination that the selection input is directed to the mode switcher option, displaying a second set of mode options that correspond to different modes; and in accordance with a determination that the selection input is directed to the first set of one or more mode options, switching the camera user interface between the photo mode and the video capture mode.

[0011] In accordance with some embodiments, a computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in with one or more input devices, one or more display generation components, and one or more cameras is described. The one or more programs including instructions for: displaying, via the one or more display generation components, a camera user interface that includes concurrently displaying: a live preview of content from the one or more cameras; and a camera mode selection affordance that includes a plurality of options including concurrently displaying: a first set of one or more mode options for switching between photo capture mode and video capture mode; a mode switcher option for selecting additional modes41019401Attorney Docket No.: P71055W01 / 77770000-858501for the camera user interface; while displaying the camera user interface, detecting, via the one or more input devices, a selection input directed to the camera user interface; and in response to detecting the selection input: in accordance with a determination that the selection input is directed to the mode switcher option, displaying a second set of mode options that correspond to different modes; and in accordance with a determination that the selection input is directed to the first set of one or more mode options, switching the camera user interface between the photo mode and the video capture mode.

[0012] In accordance with some embodiments, a method performed at a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras is described. The method includes: while displaying a camera user interface and while the computer system is configured to capture a first type of media in response to a capture request input using a respective value of a plurality of available values for a first camera setting, detecting, via the one or more input devices, a media-type input corresponding to a request to switch a type of media that will be captured in response to the capture request input; in response to detecting the media-type input: in accordance with a determination that the respective value for the first camera setting is a first value, configuring the computer system to capture a second type of media, different from the first type of media, with the first value for the first camera setting; and in accordance with a determination that the respective value for the first camera setting is a second value, different from the first value for the first camera setting, configuring the computer system to capture the second type of media, with the second value for the first camera.

[0013] In accordance with some embodiments, a non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras is described. The one or more programs including instructions for: while displaying a camera user interface and while the computer system is configured to capture a first type of media in response to a capture request input using a respective value of a plurality of available values for a first camera setting, detecting, via the one or more input devices, a media-type input corresponding to a request to switch a type of media that will be captured in response to the capture request input; in response to detecting the media-type input: in accordance with a determination that the respective value for the first camera setting is a first value, configuring51019401Attorney Docket No.: P71055W01 / 77770000-858501the computer system to capture a second type of media, different from the first type of media, with the first value for the first camera setting; and in accordance with a determination that the respective value for the first camera setting is a second value, different from the first value for the first camera setting, configuring the computer system to capture the second type of media, with the second value for the first camera.

[0014] In accordance with some embodiments, a transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras is described. The one or more programs including instructions for: while displaying a camera user interface and while the computer system is configured to capture a first type of media in response to a capture request input using a respective value of a plurality of available values for a first camera setting, detecting, via the one or more input devices, a media-type input corresponding to a request to switch a type of media that will be captured in response to the capture request input; in response to detecting the media-type input: in accordance with a determination that the respective value for the first camera setting is a first value, configuring the computer system to capture a second type of media, different from the first type of media, with the first value for the first camera setting; and in accordance with a determination that the respective value for the first camera setting is a second value, different from the first value for the first camera setting, configuring the computer system to capture the second type of media, with the second value for the first camera.

[0015] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras is described. The computer system includes one or more processors and memory storing one or more programs configured to be executed by the one or more processors. The one or more programs including instructions for: while displaying a camera user interface and while the computer system is configured to capture a first type of media in response to a capture request input using a respective value of a plurality of available values for a first camera setting, detecting, via the one or more input devices, a media-type input corresponding to a request to switch a type of media that will be captured in response to the capture request input; in response to detecting the media-type input: in accordance with a determination that the respective value for the first camera setting is a first value, configuring61019401Attorney Docket No.: P71055W01 / 77770000-858501the computer system to capture a second type of media, different from the first type of media, with the first value for the first camera setting; and in accordance with a determination that the respective value for the first camera setting is a second value, different from the first value for the first camera setting, configuring the computer system to capture the second type of media, with the second value for the first camera.

[0016] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras is described. The computer system includes: means for, while displaying a camera user interface and while the computer system is configured to capture a first type of media in response to a capture request input using a respective value of a plurality of available values for a first camera setting, detecting, via the one or more input devices, a media-type input corresponding to a request to switch a type of media that will be captured in response to the capture request input; means for, in response to detecting the media-type input: in accordance with a determination that the respective value for the first camera setting is a first value, configuring the computer system to capture a second type of media, different from the first type of media, with the first value for the first camera setting; and in accordance with a determination that the respective value for the first camera setting is a second value, different from the first value for the first camera setting, configuring the computer system to capture the second type of media, with the second value for the first camera.

[0017] In accordance with some embodiments, a computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in with one or more input devices, one or more display generation components, and one or more cameras is described. The one or more programs including instructions for: while displaying a camera user interface and while the computer system is configured to capture a first type of media in response to a capture request input using a respective value of a plurality of available values for a first camera setting, detecting, via the one or more input devices, a media-type input corresponding to a request to switch a type of media that will be captured in response to the capture request input; in response to detecting the media-type input: in accordance with a determination that the respective value for the first camera setting is a first value, configuring the computer system to capture a second type of media, different from the first type of media, with the first value for the first camera setting; and in accordance71019401Attorney Docket No.: P71055W01 / 77770000-858501with a determination that the respective value for the first camera setting is a second value, different from the first value for the first camera setting, configuring the computer system to capture the second type of media, with the second value for the first camera.

[0018] In accordance with some embodiments, a method performed at a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The method includes: while displaying, via the one or more display generation components, a camera user interface and before media capture has started based on a user input requesting media capture: detecting a change in a number of subjects that are available to be captured via the one or more cameras; and in response to detecting the change in the number of subjects that are available to be captured via the one or more cameras, changing a zoom level for capturing media with the one or more cameras.

[0019] In accordance with some embodiments, a non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: while displaying, via the one or more display generation components, a camera user interface and before media capture has started based on a user input requesting media capture: detecting a change in a number of subjects that are available to be captured via the one or more cameras; and in response to detecting the change in the number of subjects that are available to be captured via the one or more cameras, changing a zoom level for capturing media with the one or more cameras.

[0020] In accordance with some embodiments, a transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: while displaying, via the one or more display generation components, a camera user interface and before media capture has started based on a user input requesting media capture: detecting a change in a number of subjects that are available to be captured via the one or more cameras; and in response to detecting the change in the number of subjects that are available to be captured via the one or more cameras, changing a zoom level for capturing media with the one or more cameras.81019401Attorney Docket No.: P71055W01 / 77770000-858501

[0021] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras is described. The computer system includes one or more processors and memory storing one or more programs configured to be executed by the one or more processors. The one or more programs including instructions for: detecting a change in a number of subjects that are available to be captured via the one or more cameras; and in response to detecting the change in the number of subjects that are available to be captured via the one or more cameras, changing a zoom level for capturing media with the one or more cameras.

[0022] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, is described. The computer system includes: means for, while displaying, via the one or more display generation components, a camera user interface and before media capture has started based on a user input requesting media capture: detecting a change in a number of subjects that are available to be captured via the one or more cameras; and in response to detecting the change in the number of subjects that are available to be captured via the one or more cameras, changing a zoom level for capturing media with the one or more cameras.

[0023] In accordance with some embodiments, a computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: detecting a change in a number of subjects that are available to be captured via the one or more cameras; and in response to detecting the change in the number of subjects that are available to be captured via the one or more cameras, changing a zoom level for capturing media with the one or more cameras.

[0024] In accordance with some embodiments, a method performed at a computer system that is in communication with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, is described. The method including: while displaying, via the one or more display generation components, a camera user interface: detecting, via the 91019401Attorney Docket No.: P71055W01 / 77770000-858501one or more input devices, a sequence of one or more inputs that correspond to a request to capture media with both the first set of one or more cameras and the second set of one or more cameras; and in response to detecting the request to capture media with both the first set of one or more cameras and the second set of one or more cameras, capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras, wherein: a first tracking mode is used for capturing media with the first set of one or more cameras, wherein the first tracking mode includes a first set of one or more rules for changing a current framing of the first set of one or more cameras based on a first set of one or more detected events; and a second tracking mode, different from the first tracking mode, is used for capturing media with the second set of one or more cameras, wherein: the second tracking mode includes a second set of one or more rules for changing a current framing of the second set of one or more cameras based on a second set of one or more detected events; and the second set of one or more rules is different from the first set of one or more rules.

[0025] In accordance with some embodiments, a non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, is described. The one or more programs including instructions for: while displaying, via the one or more display generation components, a camera user interface: detecting, via the one or more input devices, a sequence of one or more inputs that correspond to a request to capture media with both the first set of one or more cameras and the second set of one or more cameras; and in response to detecting the request to capture media with both the first set of one or more cameras and the second set of one or more cameras, capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras, wherein: a first tracking mode is used for capturing media with the first set of one or more cameras, wherein the first tracking mode includes a first set of one or more rules for changing a current framing of the first set of one or more cameras based on a first set of one or more detected events; and a second tracking mode, different from the first tracking mode, is used for capturing media with the second set of one or more cameras, wherein: the second tracking mode includes a second set of one or more rules for changing a current framing of the second set of one or more cameras based on101019401Attorney Docket No.: P71055W01 / 77770000-858501a second set of one or more detected events; and the second set of one or more rules is different from the first set of one or more rules.

[0026] In accordance with some embodiments, a transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, is described. The one or more programs including instructions for: while displaying, via the one or more display generation components, a camera user interface: detecting, via the one or more input devices, a sequence of one or more inputs that correspond to a request to capture media with both the first set of one or more cameras and the second set of one or more cameras; and in response to detecting the request to capture media with both the first set of one or more cameras and the second set of one or more cameras, capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras, wherein: a first tracking mode is used for capturing media with the first set of one or more cameras, wherein the first tracking mode includes a first set of one or more rules for changing a current framing of the first set of one or more cameras based on a first set of one or more detected events; and a second tracking mode, different from the first tracking mode, is used for capturing media with the second set of one or more cameras, wherein: the second tracking mode includes a second set of one or more rules for changing a current framing of the second set of one or more cameras based on a second set of one or more detected events; and the second set of one or more rules is different from the first set of one or more rules.

[0027] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, is described. The one or more programs including instructions for: while displaying, via the one or more display generation components, a camera user interface: detecting, via the one or more input devices, a sequence of one or more inputs that correspond to a request to capture media with both the first set of one or more cameras and the second set of one or more cameras; and in response to detecting the request to capture111019401Attorney Docket No.: P71055W01 / 77770000-858501media with both the first set of one or more cameras and the second set of one or more cameras, capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras, wherein: a first tracking mode is used for capturing media with the first set of one or more cameras, wherein the first tracking mode includes a first set of one or more rules for changing a current framing of the first set of one or more cameras based on a first set of one or more detected events; and a second tracking mode, different from the first tracking mode, is used for capturing media with the second set of one or more cameras, wherein: the second tracking mode includes a second set of one or more rules for changing a current framing of the second set of one or more cameras based on a second set of one or more detected events; and the second set of one or more rules is different from the first set of one or more rules.

[0028] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, is described. The computer system including: means for, while displaying, via the one or more display generation components, a camera user interface: detecting, via the one or more input devices, a sequence of one or more inputs that correspond to a request to capture media with both the first set of one or more cameras and the second set of one or more cameras; and in response to detecting the request to capture media with both the first set of one or more cameras and the second set of one or more cameras, capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras, wherein: a first tracking mode is used for capturing media with the first set of one or more cameras, wherein the first tracking mode includes a first set of one or more rules for changing a current framing of the first set of one or more cameras based on a first set of one or more detected events; and a second tracking mode, different from the first tracking mode, is used for capturing media with the second set of one or more cameras, wherein: the second tracking mode includes a second set of one or more rules for changing a current framing of the second set of one or more cameras based on a second set of one or more detected events; and the second set of one or more rules is different from the first set of one or more rules.

[0029] In accordance with some embodiments, a computer program product, comprising one or more programs configured to be executed by one or more processors of a computer121019401Attorney Docket No.: P71055W01 / 77770000-858501system that is in communication with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, is described. The one or more programs including instructions for: while displaying, via the one or more display generation components, a camera user interface: detecting, via the one or more input devices, a sequence of one or more inputs that correspond to a request to capture media with both the first set of one or more cameras and the second set of one or more cameras; and in response to detecting the request to capture media with both the first set of one or more cameras and the second set of one or more cameras, capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras, wherein: a first tracking mode is used for capturing media with the first set of one or more cameras, wherein the first tracking mode includes a first set of one or more rules for changing a current framing of the first set of one or more cameras based on a first set of one or more detected events; and a second tracking mode, different from the first tracking mode, is used for capturing media with the second set of one or more cameras, wherein: the second tracking mode includes a second set of one or more rules for changing a current framing of the second set of one or more cameras based on a second set of one or more detected events; and the second set of one or more rules is different from the first set of one or more rules.

[0030] In accordance with some embodiments, a method performed at a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The method includes: displaying, via the one or more display generation components, a camera user interface that includes a camera mode selection user interface object, wherein the camera mode selection user interface object includes an indication of a currently selected capture mode for the one or more cameras; detecting, via the one or more input devices, a set of one or more inputs directed to the camera mode selection user interface object; and in response to detecting the set of one or more inputs directed to the camera mode selection user interface object, expanding the camera mode selection user interface object from a first size to a second size, larger than the first size.

[0031] In accordance with some embodiments, a non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more131019401Attorney Docket No.: P71055W01 / 77770000-858501processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: displaying, via the one or more display generation components, a camera user interface that includes a camera mode selection user interface object, wherein the camera mode selection user interface object includes an indication of a currently selected capture mode for the one or more cameras; detecting, via the one or more input devices, a set of one or more inputs directed to the camera mode selection user interface object; and in response to detecting the set of one or more inputs directed to the camera mode selection user interface object, expanding the camera mode selection user interface object from a first size to a second size, larger than the first size.

[0032] In accordance with some embodiments, a transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: displaying, via the one or more display generation components, a camera user interface that includes a camera mode selection user interface object, wherein the camera mode selection user interface object includes an indication of a currently selected capture mode for the one or more cameras; detecting, via the one or more input devices, a set of one or more inputs directed to the camera mode selection user interface object; and in response to detecting the set of one or more inputs directed to the camera mode selection user interface object, expanding the camera mode selection user interface object from a first size to a second size, larger than the first size.

[0033] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, is described. The computer system includes one or more processors and memory storing one or more programs configured to be executed by the one or more processors. The one or more programs including instructions for: displaying, via the one or more display generation components, a camera user interface that includes a camera mode selection user interface object, wherein the camera mode selection user interface object includes an indication of a currently selected capture mode for the one or more cameras; detecting, via the one or more input devices, a set of one or more inputs directed to the camera mode selection user interface object; and in response to detecting the set of one or141019401Attorney Docket No.: P71055W01 / 77770000-858501more inputs directed to the camera mode selection user interface object, expanding the camera mode selection user interface object from a first size to a second size, larger than the first size.

[0034] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, is described. The computer system includes: means for displaying, via the one or more display generation components, a camera user interface that includes a camera mode selection user interface object, wherein the camera mode selection user interface object includes an indication of a currently selected capture mode for the one or more cameras; means for detecting, via the one or more input devices, a set of one or more inputs directed to the camera mode selection user interface object; and means for, in response to detecting the set of one or more inputs directed to the camera mode selection user interface object, expanding the camera mode selection user interface object from a first size to a second size, larger than the first size.

[0035] In accordance with some embodiments, a computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: displaying, via the one or more display generation components, a camera user interface that includes a camera mode selection user interface object, wherein the camera mode selection user interface object includes an indication of a currently selected capture mode for the one or more cameras; detecting, via the one or more input devices, a set of one or more inputs directed to the camera mode selection user interface object; and in response to detecting the set of one or more inputs directed to the camera mode selection user interface object, expanding the camera mode selection user interface object from a first size to a second size, larger than the first size.

[0036] In accordance with some embodiments, a method performed at a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The method includes: displaying, via the one or more display generation components, a camera user interface that includes a first plurality of camera controls, wherein the first plurality of camera controls includes a respective platter that corresponds to one or more of the camera controls of the first plurality 151019401Attorney Docket No.: P71055W01 / 77770000-858501of camera controls; detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display additional camera controls; in response to detecting the set of one or more inputs corresponding to the request to display additional camera controls: expanding the respective platter from a first size to a second size, larger than the first size; displaying, via the one or more generation components, a second plurality of camera controls, different from the first plurality of camera controls, wherein, the respective platter, when displayed at the second size, occupies a first portion of the camera user interface that was previously occupied by one or more of the first plurality of camera controls; and ceasing to display one or more of the first plurality of camera controls.

[0037] In accordance with some embodiments, a non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: displaying, via the one or more display generation components, a camera user interface that includes a first plurality of camera controls, wherein the first plurality of camera controls includes a respective platter that corresponds to one or more of the camera controls of the first plurality of camera controls; detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display additional camera controls; in response to detecting the set of one or more inputs corresponding to the request to display additional camera controls: expanding the respective platter from a first size to a second size, larger than the first size; displaying, via the one or more generation components, a second plurality of camera controls, different from the first plurality of camera controls, wherein, the respective platter, when displayed at the second size, occupies a first portion of the camera user interface that was previously occupied by one or more of the first plurality of camera controls; and ceasing to display one or more of the first plurality of camera controls.

[0038] In accordance with some embodiments, a transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: displaying, via the one or more display generation components, a camera user interface that includes a first plurality of camera controls, wherein161019401Attorney Docket No.: P71055W01 / 77770000-858501the first plurality of camera controls includes a respective platter that corresponds to one or more of the camera controls of the first plurality of camera controls; detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display additional camera controls; in response to detecting the set of one or more inputs corresponding to the request to display additional camera controls: expanding the respective platter from a first size to a second size, larger than the first size; displaying, via the one or more generation components, a second plurality of camera controls, different from the first plurality of camera controls, wherein, the respective platter, when displayed at the second size, occupies a first portion of the camera user interface that was previously occupied by one or more of the first plurality of camera controls; and ceasing to display one or more of the first plurality of camera controls.

[0039] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, is described. The computer system includes one or more processors and memory storing one or more programs configured to be executed by the one or more processors. The one or more programs including instructions for: displaying, via the one or more display generation components, a camera user interface that includes a first plurality of camera controls, wherein the first plurality of camera controls includes a respective platter that corresponds to one or more of the camera controls of the first plurality of camera controls; detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display additional camera controls; in response to detecting the set of one or more inputs corresponding to the request to display additional camera controls: expanding the respective platter from a first size to a second size, larger than the first size; displaying, via the one or more generation components, a second plurality of camera controls, different from the first plurality of camera controls, wherein, the respective platter, when displayed at the second size, occupies a first portion of the camera user interface that was previously occupied by one or more of the first plurality of camera controls; and ceasing to display one or more of the first plurality of camera controls.

[0040] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, is described. The computer system includes: means for displaying, via the one or more display generation components, a camera user interface that includes a171019401Attorney Docket No.: P71055W01 / 77770000-858501first plurality of camera controls, wherein the first plurality of camera controls includes a respective platter that corresponds to one or more of the camera controls of the first plurality of camera controls; means for detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display additional camera controls; means for, in response to detecting the set of one or more inputs corresponding to the request to display additional camera controls: expanding the respective platter from a first size to a second size, larger than the first size; displaying, via the one or more generation components, a second plurality of camera controls, different from the first plurality of camera controls, wherein, the respective platter, when displayed at the second size, occupies a first portion of the camera user interface that was previously occupied by one or more of the first plurality of camera controls; and ceasing to display one or more of the first plurality of camera controls.

[0041] In accordance with some embodiments, a computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: displaying, via the one or more display generation components, a camera user interface that includes a first plurality of camera controls, wherein the first plurality of camera controls includes a respective platter that corresponds to one or more of the camera controls of the first plurality of camera controls; detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display additional camera controls; in response to detecting the set of one or more inputs corresponding to the request to display additional camera controls: expanding the respective platter from a first size to a second size, larger than the first size; displaying, via the one or more generation components, a second plurality of camera controls, different from the first plurality of camera controls, wherein, the respective platter, when displayed at the second size, occupies a first portion of the camera user interface that was previously occupied by one or more of the first plurality of camera controls; and ceasing to display one or more of the first plurality of camera controls.

[0042] In accordance with some embodiments, a method performed at a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The method includes: detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to181019401Attorney Docket No.: P71055W01 / 77770000-858501display a camera user interface for capturing media using the one or more cameras at a respective zoom level; in response to detecting the set of one or more inputs corresponding to the request to display the camera user interface for capturing media using the one or more cameras at the respective zoom level, displaying, via the one or more display generation components, the camera user interface, including: in accordance with a determination that the respective zoom level is a first zoom level, displaying a zoom control user interface object for adjusting a zoom level of the one or more cameras at a first location in the camera user interface; and in accordance with a determination that the respective zoom level is a second zoom level, different from the first zoom level, displaying the zoom control user interface object for adjusting a zoom level of the one or more cameras at a second location in the camera user interface, different from the first location.

[0043] In accordance with some embodiments, a non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display a camera user interface for capturing media using the one or more cameras at a respective zoom level; in response to detecting the set of one or more inputs corresponding to the request to display the camera user interface for capturing media using the one or more cameras at the respective zoom level, displaying, via the one or more display generation components, the camera user interface, including: in accordance with a determination that the respective zoom level is a first zoom level, displaying a zoom control user interface object for adjusting a zoom level of the one or more cameras at a first location in the camera user interface; and in accordance with a determination that the respective zoom level is a second zoom level, different from the first zoom level, displaying the zoom control user interface object for adjusting a zoom level of the one or more cameras at a second location in the camera user interface, different from the first location.

[0044] In accordance with some embodiments, a transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The one or more191019401Attorney Docket No.: P71055W01 / 77770000-858501programs including instructions for: detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display a camera user interface for capturing media using the one or more cameras at a respective zoom level; in response to detecting the set of one or more inputs corresponding to the request to display the camera user interface for capturing media using the one or more cameras at the respective zoom level, displaying, via the one or more display generation components, the camera user interface, including: in accordance with a determination that the respective zoom level is a first zoom level, displaying a zoom control user interface object for adjusting a zoom level of the one or more cameras at a first location in the camera user interface; and in accordance with a determination that the respective zoom level is a second zoom level, different from the first zoom level, displaying the zoom control user interface object for adjusting a zoom level of the one or more cameras at a second location in the camera user interface, different from the first location.

[0045] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, is described. The computer system includes one or more processors and memory storing one or more programs configured to be executed by the one or more processors. The one or more programs including instructions for: detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display a camera user interface for capturing media using the one or more cameras at a respective zoom level; in response to detecting the set of one or more inputs corresponding to the request to display the camera user interface for capturing media using the one or more cameras at the respective zoom level, displaying, via the one or more display generation components, the camera user interface, including: in accordance with a determination that the respective zoom level is a first zoom level, displaying a zoom control user interface object for adjusting a zoom level of the one or more cameras at a first location in the camera user interface; and in accordance with a determination that the respective zoom level is a second zoom level, different from the first zoom level, displaying the zoom control user interface object for adjusting a zoom level of the one or more cameras at a second location in the camera user interface, different from the first location.

[0046] In accordance with some embodiments, a computer system configured to communicate with one or more input devices, one or more display generation components,201019401Attorney Docket No.: P71055W01 / 77770000-858501and one or more cameras, is described. The computer system includes: means for detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display a camera user interface for capturing media using the one or more cameras at a respective zoom level; means for, in response to detecting the set of one or more inputs corresponding to the request to display the camera user interface for capturing media using the one or more cameras at the respective zoom level, displaying, via the one or more display generation components, the camera user interface, including: in accordance with a determination that the respective zoom level is a first zoom level, displaying a zoom control user interface object for adjusting a zoom level of the one or more cameras at a first location in the camera user interface; and in accordance with a determination that the respective zoom level is a second zoom level, different from the first zoom level, displaying the zoom control user interface object for adjusting a zoom level of the one or more cameras at a second location in the camera user interface, different from the first location.

[0047] In accordance with some embodiments, a computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display a camera user interface for capturing media using the one or more cameras at a respective zoom level; in response to detecting the set of one or more inputs corresponding to the request to display the camera user interface for capturing media using the one or more cameras at the respective zoom level, displaying, via the one or more display generation components, the camera user interface, including: in accordance with a determination that the respective zoom level is a first zoom level, displaying a zoom control user interface object for adjusting a zoom level of the one or more cameras at a first location in the camera user interface; and in accordance with a determination that the respective zoom level is a second zoom level, different from the first zoom level, displaying the zoom control user interface object for adjusting a zoom level of the one or more cameras at a second location in the camera user interface, different from the first location.

[0048] In accordance with some embodiments, a method performed at a computer system that is in communication with one or more input, one or more display generation components,211019401Attorney Docket No.: P71055W01 / 77770000-858501and one or more cameras, is described. The method includes: detecting an event associated with displaying a camera user interface; in response to detecting the event associated with displaying the camera user interface, displaying, via the one or more display generation components, the camera user interface, including displaying concurrently within the camera user interface: a live preview of content from the one or more cameras; and a plurality of selectable options including a first selectable option and a second selectable option that is different from the first selectable option; detecting, via the one or more input devices, a selection input; and in response to detecting the selection input: in accordance with a determination that the selection input is directed to the first selectable option of the plurality of selectable options, changing a zoom level of the live preview of content from the one or more cameras; and in accordance with a determination that the selection input is directed to the second selectable option of the plurality of selectable options, different from the first selectable option, changing a capture orientation of media captured by the one or more cameras via the camera user interface.

[0049] In accordance with some embodiments, a non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: detecting an event associated with displaying a camera user interface; in response to detecting the event associated with displaying the camera user interface, displaying, via the one or more display generation components, the camera user interface, including displaying concurrently within the camera user interface: a live preview of content from the one or more cameras; and a plurality of selectable options including a first selectable option and a second selectable option that is different from the first selectable option; detecting, via the one or more input devices, a selection input; and in response to detecting the selection input: in accordance with a determination that the selection input is directed to the first selectable option of the plurality of selectable options, changing a zoom level of the live preview of content from the one or more cameras; and in accordance with a determination that the selection input is directed to the second selectable option of the plurality of selectable options, different from the first selectable option, changing a capture orientation of media captured by the one or more cameras via the camera user interface.221019401Attorney Docket No.: P71055W01 / 77770000-858501

[0050] In accordance with some embodiments, a transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: detecting an event associated with displaying a camera user interface; in response to detecting the event associated with displaying the camera user interface, displaying, via the one or more display generation components, the camera user interface, including displaying concurrently within the camera user interface: a live preview of content from the one or more cameras; and a plurality of selectable options including a first selectable option and a second selectable option that is different from the first selectable option; detecting, via the one or more input devices, a selection input; and in response to detecting the selection input: in accordance with a determination that the selection input is directed to the first selectable option of the plurality of selectable options, changing a zoom level of the live preview of content from the one or more cameras; and in accordance with a determination that the selection input is directed to the second selectable option of the plurality of selectable options, different from the first selectable option, changing a capture orientation of media captured by the one or more cameras via the camera user interface.

[0051] In accordance with some embodiments, a computer system configured to communicate with one or more input, one or more display generation components, and one or more cameras, is described. The computer system includes one or more processors and memory storing one or more programs configured to be executed by the one or more processors. The one or more programs including instructions for: detecting an event associated with displaying a camera user interface; in response to detecting the event associated with displaying the camera user interface, displaying, via the one or more display generation components, the camera user interface, including displaying concurrently within the camera user interface: a live preview of content from the one or more cameras; and a plurality of selectable options including a first selectable option and a second selectable option that is different from the first selectable option; detecting, via the one or more input devices, a selection input; and in response to detecting the selection input: in accordance with a determination that the selection input is directed to the first selectable option of the plurality of selectable options, changing a zoom level of the live preview of content from the one or more cameras; and in accordance with a determination that the selection input is directed to the second selectable option of the plurality of selectable options, different from the first 231019401Attorney Docket No.: P71055W01 / 77770000-858501selectable option, changing a capture orientation of media captured by the one or more cameras via the camera user interface.

[0052] In accordance with some embodiments, a computer system configured to communicate with one or more input, one or more display generation components, and one or more cameras, is described. The computer system includes: means for detecting an event associated with displaying a camera user interface; means for, in response to detecting the event associated with displaying the camera user interface, displaying, via the one or more display generation components, the camera user interface, including displaying concurrently within the camera user interface: a live preview of content from the one or more cameras; and a plurality of selectable options including a first selectable option and a second selectable option that is different from the first selectable option; means for detecting, via the one or more input devices, a selection input; and means for, in response to detecting the selection input: in accordance with a determination that the selection input is directed to the first selectable option of the plurality of selectable options, changing a zoom level of the live preview of content from the one or more cameras; and in accordance with a determination that the selection input is directed to the second selectable option of the plurality of selectable options, different from the first selectable option, changing a capture orientation of media captured by the one or more cameras via the camera user interface.

[0053] In accordance with some embodiments, a computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system configured to communicate with one or more input, one or more display generation components, and one or more cameras, is described. The one or more programs including instructions for: detecting an event associated with displaying a camera user interface; in response to detecting the event associated with displaying the camera user interface, displaying, via the one or more display generation components, the camera user interface, including displaying concurrently within the camera user interface: a live preview of content from the one or more cameras; and a plurality of selectable options including a first selectable option and a second selectable option that is different from the first selectable option; detecting, via the one or more input devices, a selection input; and in response to detecting the selection input: in accordance with a determination that the selection input is directed to the first selectable option of the plurality of selectable options, changing a zoom level of the live preview of content from the one or more cameras; and in accordance with a241019401Attorney Docket No.: P71055W01 / 77770000-858501determination that the selection input is directed to the second selectable option of the plurality of selectable options, different from the first selectable option, changing a capture orientation of media captured by the one or more cameras via the camera user interface

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

[0055] Thus, devices are provided with faster, more efficient methods and interfaces for displaying camera user interfaces, thereby increasing the effectiveness, efficiency, and user satisfaction with such devices. Such methods and interfaces may complement or replace other methods for displaying camera user interfaces.DESCRIPTION OF THE FIGURES

[0056] For a better understanding of the various described embodiments, reference should be made to the Description of Embodiments below, in conjunction with the following drawings in which like reference numerals refer to corresponding parts throughout the figures.

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

[0058] FIG. IB is a block diagram illustrating exemplary components for event handling in accordance with some embodiments.

[0059] FIG. 2 illustrates a portable multifunction device having a touch screen in accordance with some embodiments.

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

[0061] FIGS. 3B-3G illustrate the use of Application Programming Interfaces (APIs) to perform operations.251019401Attorney Docket No.: P71055W01 / 77770000-858501

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

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

[0064] FIG. 5 A illustrates a personal electronic device in accordance with some embodiments.

[0065] FIG. 5B is a block diagram illustrating a personal electronic device in accordance with some embodiments.

[0066] FIGS. 6A-6S illustrate camera user interfaces, in some embodiments.

[0067] FIG. 7 is a flow diagram illustrating methods for readily switching between camera modes and / or accessing additional mode controls, in some embodiments.

[0068] FIG. 8 is a flow diagram illustrating methods for maintaining certain camera settings when switching between camera modes, in some embodiments.

[0069] FIGS. 9A-9J illustrate user interfaces for a camera application that changes zoom levels of one or more cameras, based on a change in the number of subjects, in some embodiments.

[0070] FIG. 10 is a flow diagram illustrating methods for changing zoom levels of one or more cameras, based on a change in the number of subjects, in some embodiments.

[0071] FIGS. 11 A-l 10 illustrate user interfaces for capturing media concurrently with two sets of cameras, in some embodiments.

[0072] FIG. 12 is a flow diagram illustrating methods for capturing media concurrently with two sets of cameras, in some embodiments.

[0073] FIGS. 13A-13W illustrate interfaces for a camera application that includes a mode switching control that expands, a camera control panel overlaid on camera user interface, and displaying a control for adjusting a camera zoom level that shifts positions, in some embodiments.261019401Attorney Docket No.: P71055W01 / 77770000-858501

[0074] FIG. 14 is a flow diagram illustrating methods for displaying a camera user interface with a mode switching control that expands, in some embodiments.

[0075] FIG. 15 is a flow diagram illustrating methods for displaying a camera control panel overlaid on camera user interface, in some embodiments.

[0076] FIG. 16 is a flow diagram illustrating methods for displaying a control for adjusting a camera zoom level that shifts positions, in some embodiments.

[0077] FIGS. 17A-17K illustrate interfaces for displaying a camera user interface that concurrently includes one or more controls for changing a zoom level and one or more controls for changing a capture orientation, in some embodiments.

[0078] FIG. 18 is a flow diagram illustrating methods for displaying a camera user interface that concurrently includes one or more controls for changing a zoom level and one or more controls for changing a capture orientation, in some embodiments.DESCRIPTION OF EMBODIMENTS

[0079] The following description sets forth exemplary methods, parameters, and the like. It should be recognized, however, that such description is not intended as a limitation on the scope of the present disclosure but is instead provided as a description of exemplary embodiments.

[0080] There is a need for electronic devices that provide efficient methods and interfaces for camera applications. For example, there is a need for methods and user interfaces for readily switching between camera modes and / or accessing additional mode controls.Additionally, there is a need for methods and user interfaces for maintaining certain camera settings when switching between camera modes. Such techniques can reduce the cognitive burden on a user who accesses a camera user interface, thereby enhancing productivity. Further, such techniques can reduce processor and battery power otherwise wasted on redundant user inputs.

[0081] Below, FIGS. 1A-1B, 2, 3A-3G, 4A-4B, and 5A-5B provide a description of exemplary devices for performing the techniques for managing event notifications. FIGS. 6A-6S illustrate exemplary user interfaces for camera applications. FIG. 7 is a flow diagram illustrating methods for readily switching between camera modes and / or accessing additional 271019401Attorney Docket No.: P71055W01 / 77770000-858501mode controls in accordance with some embodiments. FIG. 8 is a flow diagram illustrating methods for maintaining certain camera settings when switching between camera modes in accordance with some embodiments. The user interfaces in FIGS. 6A-6S are used to illustrate the processes described below, including the processes in FIGS. 7 and 8. FIGS. 9A-9J illustrate exemplary user interfaces for a camera application that changes zoom levels of one or more cameras. FIG. 10 is a flow diagram illustrating methods for changing zoom levels of one or more cameras, based on a change in the number of subjects, in some embodiments. The user interfaces in FIGS. 9A-9J are used to illustrate the processes described below, including the processes in FIG. 10. FIGS. 11 A-l 10 illustrate exemplary user interfaces for capturing media concurrently with two sets of cameras. FIG. 12 is a flow diagram illustrating methods for capturing media concurrently with two sets of cameras, in some embodiments. The user interfaces in FIGS. 11 A-l 10 are used to illustrate the processes described below, including the processes in FIG. 12. FIGS. 13A-13W illustrate interfaces for a camera application that includes a mode switching control that expands, a camera control panel overlaid on camera user interface, and displaying a control for adjusting a camera zoom level that shifts positions, in some embodiments. FIG. 14 is a flow diagram illustrating methods for displaying a camera user interface with a mode switching control that expands, in some embodiments. FIG. 15 is a flow diagram illustrating methods for displaying a camera control panel overlaid on camera user interface, in some embodiments. FIG. 16 is a flow diagram illustrating methods for displaying a control for adjusting a camera zoom level that shifts positions, in some embodiments. The user interfaces in FIGS. 13A-13W are used to illustrate the processes described below, including the processes in FIGS. 14, 15, and 16. FIGS. 17A-17K illustrate interfaces for displaying a camera user interface that concurrently includes one or more controls for changing a zoom level and one or more controls for changing a capture orientation, in some embodiments. FIG. 18 is a flow diagram illustrating methods for displaying a camera user interface that concurrently includes one or more controls for changing a zoom level and one or more controls for changing a capture orientation, in some embodiments. The user interfaces in FIGS. 17A-17K are used to illustrate the process described below, including the process in FIG. 18.

[0082] The processes described below enhance the operability of the devices and make the user-device interfaces more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating / interacting with the device) through various techniques, including by providing improved visual feedback to the user, reducing the 281019401Attorney Docket No.: P71055W01 / 77770000-858501number of inputs needed to perform an operation, providing additional control options without cluttering the user interface with additional displayed controls, performing an operation when a set of conditions has been met without requiring further user input, and / or additional techniques. These techniques also reduce power usage and improve battery life of the device by enabling the user to use the device more quickly and efficiently.

[0083] In addition, in methods described herein where one or more steps are contingent upon one or more conditions having been met, it should be understood that the described method can be repeated in multiple repetitions so that over the course of the repetitions all of the conditions upon which steps in the method are contingent have been met in different repetitions 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, then a person of ordinary skill would appreciate that the claimed steps are repeated until the condition has been both satisfied and not satisfied, in no particular order. Thus, a method described with one or more steps that are contingent upon one or more conditions having been met could be rewritten as a method that is repeated until each of the conditions described in the method has been met. This, however, is not required of system or computer readable medium claims where the system or computer readable medium contains instructions for performing the contingent operations based on the satisfaction of the corresponding one or more conditions and thus is capable of determining whether the contingency has or has not been satisfied without explicitly repeating steps of a method until all of the conditions upon which steps in the method are contingent have been met. A person having ordinary skill in the art would also understand that, similar to a method with contingent steps, a system or computer readable storage medium can repeat the steps of a method as many times as are needed to ensure that all of the contingent steps have been performed.

[0084] Although the following description uses terms “first,” “second,” etc. to describe various elements, these elements should not be limited by the terms. In some embodiments, these terms are used to distinguish one element from another. For example, a first touch could be termed a second touch, and, similarly, a second touch could be termed a first touch, without departing from the scope of the various described embodiments. In some embodiments, the first touch and the second touch are two separate references to the same touch. In some embodiments, the first touch and the second touch are both touches, but they are not the same touch.291019401Attorney Docket No.: P71055W01 / 77770000-858501

[0085] As used herein, the phrase “one or more of A and / or B” is construed to include all combinations of A and B, including, but not limited to: A individually without B; B individually without A; as well as a combination of A and B. The phrase “one or more of A, B, and / or C” is construed to include all combinations of A, B, and C, including, but not limited to: A individually without B and C; B individually without A and C; C individually without A and B; as well as any combinations of A, B, and / or C (e.g., A and B without C; A and C without B; B and C without A; and / or A, B, and C). Additionally, as used herein, the phrase “selected from the group consisting of A, B, C, and a combination thereof’ and the phrase “at least one of A, B, and C” shall be construed to have the same meaning as the phrase “one or more of A, B, and / or C” as defined above. As used herein, the phrase “at least one of A, B, or C” and “one or more of A, B, or C” shall be construed to have the same meaning as the phrase “one or more of A, B, and / or C” as defined above. As used herein, the phrase “a combination including all of A, B, and C” is construed to include a combination of all the elements listed (e.g., a combination of A, B, and C).

[0086] The terminology used in the description of the various described embodiments herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used in the description of the various described embodiments and the appended claims, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term “and / or” as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms “includes,” “including,” “comprises,” and / or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0087] The term “if’ is, optionally, construed to mean “when” or “upon” or “in response to determining” or “in response to detecting,” depending on the context. Similarly, the phrase “if it is determined” or “if [a stated condition or event] is detected” is, optionally, construed to mean “upon determining” or “in response to determining” or “upon detecting [the stated condition or event]” or “in response to detecting [the stated condition or event],” depending on the context.301019401Attorney Docket No.: P71055W01 / 77770000-858501

[0088] Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communications device, such as a mobile telephone, that also contains other functions, such as PDA and / or music player functions. Exemplary embodiments of portable multifunction devices include, without limitation, the iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California. Other portable electronic devices, such as laptops or tablet computers with touch-sensitive surfaces (e.g., touch screen displays and / or touchpads), are, optionally, used. It should also be understood that, in some embodiments, the device is not a portable communications device, but is a desktop computer with a touch-sensitive surface (e.g., a touch screen display and / or a touchpad). In some embodiments, the electronic device is a computer system that is in communication (e.g., via wireless communication, via wired communication) with a display generation component (e.g., a display device such as a head-mounted display (HMD), a display, a projector, a touch-sensitive display, or other device or component that presents visual content to a user, for example on or in the display generation component itself or produced from the display generation component and visible elsewhere). The display generation component is configured to provide visual output, such as display via a CRT display, display via an LED display, or display via image projection. In some embodiments, the display generation component is integrated with the computer system. In some embodiments, the display generation component is separate from the computer system. As used herein, “displaying” content includes causing to display the content (e.g., video data rendered or decoded by display controller 156) by transmitting, via a wired or wireless connection, data (e.g., image data or video data) to an integrated or external display generation component to visually produce the content.

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

[0090] The device typically supports a variety of applications, such as one or more of the following: a drawing application, a presentation application, a word processing application, a website creation application, a disk authoring application, a spreadsheet application, a gaming application, a telephone application, a video conferencing application, an e-mail application,311019401Attorney Docket No.: P71055W01 / 77770000-858501an instant messaging application, a workout support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and / or a digital video player application.

[0091] The various applications that are executed on the device optionally use at least one common physical user-interface device, such as the touch-sensitive surface. One or more functions of the touch-sensitive surface as well as corresponding information displayed on the device are, optionally, adjusted and / or varied from one application to the next and / or within a respective application. In this way, a common physical architecture (such as the touch-sensitive surface) of the device optionally supports the variety of applications with user interfaces that are intuitive and transparent to the user.

[0092] Attention is now directed toward embodiments of portable devices with touch-sensitive displays. FIG. 1 A is a block diagram illustrating portable multifunction device 100 with touch-sensitive display system 112 in accordance with some embodiments. Touch-sensitive display 112 is sometimes called a “touch screen” for convenience and is sometimes known as or called a “touch-sensitive display system.” Device 100 includes memory 102 (which optionally includes one or more computer-readable storage mediums), memory controller 122, one or more processing units (CPUs) 120, peripherals interface 118, RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, input / output (VO) subsystem 106, other input control devices 116, and external port 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more contact intensity sensors 165 for detecting intensity of contacts on device 100 (e.g., a touch-sensitive surface such as touch-sensitive display system 112 of device 100). Device 100 optionally includes one or more tactile output generators 167 for generating tactile outputs on device 100 (e.g., generating tactile outputs on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touchpad 355 of device 300). These components optionally communicate over one or more communication buses or signal lines 103.

[0093] As used in the specification and claims, the term “intensity” of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch-sensitive surface, or to a substitute (proxy) for the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values that includes at least four distinct values and more typically includes hundreds of distinct values (e.g., at least 256). Intensity of a contact is, optionally, determined (or321019401Attorney Docket No.: P71055W01 / 77770000-858501measured) using various approaches and various sensors or combinations of sensors. For example, one or more force sensors underneath or adjacent to the touch-sensitive surface are, optionally, used to measure force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., a weighted average) to determine an estimated force of a contact. Similarly, a pressuresensitive tip of a stylus is, optionally, used to determine a pressure of the stylus on the touch-sensitive surface. Alternatively, the size of the contact area detected on the touch-sensitive surface and / or changes thereto, the capacitance of the touch-sensitive surface proximate to the contact and / or changes thereto, and / or the resistance of the touch-sensitive surface proximate to the contact and / or changes thereto are, optionally, used as a substitute for the force or pressure of the contact on the touch-sensitive surface. In some implementations, the substitute measurements for contact force or pressure are used directly to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is described in units corresponding to the substitute measurements). In some implementations, the substitute measurements for contact force or pressure are converted to an estimated force or pressure, and the estimated force or pressure is used to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). Using the intensity of a contact as an attribute of a user input allows for user access to additional device functionality that may otherwise not be accessible by the user on a reduced-size device with limited real estate for displaying affordances (e.g., on a touch-sensitive display) and / or receiving user input (e.g., via a touch-sensitive display, a touch-sensitive surface, or a physical / mechanical control such as a knob or a button).

[0094] As used in the specification and claims, the term “tactile output” refers to physical displacement of a device relative to a previous position of the device, physical displacement of a component (e.g., a touch-sensitive surface) of a device relative to another component (e.g., housing) of the device, or displacement of the component relative to a center of mass of the device that will be detected by a user with the user’s sense of touch. For example, in situations where the device or the component of the device is in contact with a surface of a user that is sensitive to touch (e.g., a finger, palm, or other part of a user’s hand), the tactile output generated by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in physical characteristics of the device or the component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is, optionally, interpreted by the user as a “down click” or “up 331019401Attorney Docket No.: P71055W01 / 77770000-858501click” of a physical actuator button. In some cases, a user will feel a tactile sensation such as an “down click” or “up click” even when there is no movement of a physical actuator button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user’s movements. As another example, movement of the touch-sensitive surface is, optionally, interpreted or sensed by the user as “roughness” of the touch-sensitive surface, even when there is no change in smoothness of the touch-sensitive surface. While such interpretations of touch by a user will be subject to the individualized sensory perceptions of the user, there are many sensory perceptions of touch that are common to a large majority of users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., an “up click,” a “down click,” “roughness”), unless otherwise stated, the generated tactile output corresponds to physical displacement of the device or a component thereof that will generate the described sensory perception for a typical (or average) user.

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

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

[0097] Peripherals interface 118 can be used to couple input and output peripherals of the device to CPU 120 and memory 102. The one or more processors 120 run or execute various software programs (such as computer programs (e.g., including instructions)) and / or sets of instructions stored in memory 102 to perform various functions for device 100 and to process data. In some embodiments, peripherals interface 118, CPU 120, and memory controller 122 are, optionally, implemented on a single chip, such as chip 104. In some other embodiments, they are, optionally, implemented on separate chips.341019401Attorney Docket No.: P71055W01 / 77770000-858501

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

[0099] Audio circuitry 110, speaker 111, and microphone 113 provide an audio interface between a user and device 100. Audio circuitry 110 receives audio data from peripherals interface 118, converts the audio data to an electrical signal, and transmits the electrical signal to speaker 111. Speaker 111 converts the electrical signal to human-audible sound waves. Audio circuitry 110 also receives electrical signals converted by microphone 113 from sound waves. Audio circuitry 110 converts the electrical signal to audio data and351019401Attorney Docket No.: P71055W01 / 77770000-858501transmits the audio data to peripherals interface 118 for processing. Audio data is, optionally, retrieved from and / or transmitted to memory 102 and / or RF circuitry 108 by peripherals interface 118. In some embodiments, audio circuitry 110 also includes a headset jack (e.g., 212, FIG. 2). The headset jack provides an interface between audio circuitry 110 and removable audio input / output peripherals, such as output-only headphones or a headset with both output (e.g., a headphone for one or both ears) and input (e.g., a microphone).

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

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

[0102] Touch-sensitive display 112 provides an input interface and an output interface between the device and a user. Display controller 156 receives and / or sends electrical signals from / to touch screen 112. Touch screen 112 displays visual output to the user. The visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively termed “graphics”). In some embodiments, some or all of the visual output optionally corresponds to user-interface objects.

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

[0104] Touch screen 112 optionally uses LCD (liquid crystal display) technology, LPD (light emitting polymer display) technology, or LED (light emitting diode) technology, although other display technologies are used in other embodiments. Touch screen 112 and 371019401Attorney Docket No.: P71055W01 / 77770000-858501display controller 156 optionally detect contact and any movement or breaking thereof using any of a plurality of touch sensing technologies now known or later developed, including but not limited to capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with touch screen 112. In an exemplary embodiment, projected mutual capacitance sensing technology is used, such as that found in the iPhone® and iPod Touch® from Apple Inc. of Cupertino, California.

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

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

[0107] Touch screen 112 optionally has a video resolution in excess of 100 dpi. In some embodiments, the touch screen has a video resolution of approximately 160 dpi. The user optionally makes contact with touch screen 112 using any suitable object or appendage, such as a stylus, a finger, and so forth. In some embodiments, the user interface is designed to 381019401Attorney Docket No.: P71055W01 / 77770000-858501work primarily with finger-based contacts and gestures, which can be less precise than stylusbased input due to the larger area of contact of a finger on the touch screen. In some embodiments, the device translates the rough finger-based input into a precise pointer / cursor position or command for performing the actions desired by the user.

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

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

[0110] Device 100 optionally also includes secure element 163 for securely storing information. In some embodiments, secure element 163 is a hardware component (e.g., a secure microcontroller chip) configured to securely store data or an algorithm. In some embodiments, secure element 163 provides (e.g., releases) secure information (e.g., payment information (e.g., an account number and / or a transaction-specific dynamic security code), identification information (e.g., credentials of a state-approved digital identification), and / or authentication information (e.g., data generated using a cryptography engine and / or by performing asymmetric cryptography operations)). In some embodiments, secure element 163 provides (or releases) the secure information in response to device 100 receiving authorization, such as a user authentication (e.g., fingerprint authentication; passcode authentication; detecting double-press of a hardware button when device 100 is in an unlocked state, and optionally, while device 100 has been continuously on a user’s wrist since device 100 was unlocked by providing authentication credentials to device 100, where the continuous presence of device 100 on the user’s wrist is determined by periodically checking that the device is in contact with the user’s skin). For example, device 100 detects a fingerprint at a fingerprint sensor (e.g., a fingerprint sensor integrated into a button) of device 391019401Attorney Docket No.: P71055W01 / 77770000-858501100. Device 100 determines whether the detected fingerprint is consistent with an enrolled fingerprint. In accordance with a determination that the fingerprint is consistent with the enrolled fingerprint, secure element 163 provides (e.g., releases) the secure information. In accordance with a determination that the fingerprint is not consistent with the enrolled fingerprint, secure element 163 forgoes providing (e.g., releasing) the secure information.[OHl] Device 100 optionally also includes one or more optical sensors 164. FIG. 1A shows an optical sensor coupled to optical sensor controller 158 in I / O subsystem 106.Optical sensor 164 optionally includes charge-coupled device (CCD) or complementary metal-oxide semiconductor (CMOS) phototransistors. Optical sensor 164 receives light from the environment, projected through one or more lenses, and converts the light to data representing an image. In conjunction with imaging module 143 (also called a camera module), optical sensor 164 optionally captures still images or video. In some embodiments, an optical sensor is located on the back of device 100, opposite touch screen display 112 on the front of the device so that the touch screen display is enabled for use as a viewfinder for still and / or video image acquisition. In some embodiments, an optical sensor is located on the front of the device so that the user’s image is, optionally, obtained for video conferencing while the user views the other video conference participants on the touch screen display. In some embodiments, the position of optical sensor 164 can be changed by the user (e.g., by rotating the lens and the sensor in the device housing) so that a single optical sensor 164 is used along with the touch screen display for both video conferencing and still and / or video image acquisition.

[0112] Device 100 optionally also includes one or more depth camera sensors 175.FIG. 1A shows a depth camera sensor coupled to depth camera controller 169 in I / O subsystem 106. Depth camera sensor 175 receives data from the environment to create a three dimensional model of an object (e.g., a face) within a scene from a viewpoint (e.g., a depth camera sensor). In some embodiments, in conjunction with imaging module 143 (also called a camera module), depth camera sensor 175 is optionally used to determine a depth map of different portions of an image captured by the imaging module 143. In some embodiments, a depth camera sensor is located on the front of device 100 so that the user’s image with depth information is, optionally, obtained for video conferencing while the user views the other video conference participants on the touch screen display and to capture selfies with depth map data. In some embodiments, the depth camera sensor 175 is located on the back of401019401Attorney Docket No.: P71055W01 / 77770000-858501device, or on the back and the front of the device 100. In some embodiments, the position of depth camera sensor 175 can be changed by the user (e.g., by rotating the lens and the sensor in the device housing) so that a depth camera sensor 175 is used along with the touch screen display for both video conferencing and still and / or video image acquisition.

[0113] In some embodiments, a depth map (e.g., depth map image) contains information (e.g., values) that relates to the distance of objects in a scene from a viewpoint (e.g., a camera, an optical sensor, a depth camera sensor). In one embodiment of a depth map, each depth pixel defines the position in the viewpoint's Z-axis where its corresponding two-dimensional pixel is located. In some embodiments, a depth map is composed of pixels wherein each pixel is defined by a value (e.g., 0 - 255). For example, the "0" value represents pixels that are located at the most distant place in a "three dimensional" scene and the "255" value represents pixels that are located closest to a viewpoint (e.g., a camera, an optical sensor, a depth camera sensor) in the "three dimensional" scene. In other embodiments, a depth map represents the distance between an object in a scene and the plane of the viewpoint. In some embodiments, the depth map includes information about the relative depth of various features of an object of interest in view of the depth camera (e.g., the relative depth of eyes, nose, mouth, ears of a user’s face). In some embodiments, the depth map includes information that enables the device to determine contours of the object of interest in a z direction.

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

[0115] Device 100 optionally also includes one or more proximity sensors 166. FIG. 1A shows proximity sensor 166 coupled to peripherals interface 118. Alternately, proximity sensor 166 is, optionally, coupled to input controller 160 in I / O subsystem 106. Proximity sensor 166 optionally performs as described in U.S. Patent Application Nos. 11 / 241,839, “Proximity Detector In Handheld Device”; 11 / 240,788, “Proximity Detector In Handheld Device”; 11 / 620,702, “Using Ambient Light Sensor To Augment Proximity Sensor Output”; 11 / 586,862, “Automated Response To And Sensing Of User Activity In Portable Devices”; and 11 / 638,251, “Methods And Systems For Automatic Configuration Of Peripherals,” which are hereby incorporated by reference in their entirety. In some embodiments, the proximity sensor turns off and disables touch screen 112 when the multifunction device is placed near the user’s ear (e.g., when the user is making a phone call).

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

[0117] Device 100 optionally also includes one or more accelerometers 168. FIG. 1A shows accelerometer 168 coupled to peripherals interface 118. Alternately, accelerometer 168 is, optionally, coupled to an input controller 160 in I / O subsystem 106. Accelerometer 168 optionally performs as described in U.S. Patent Publication No. 20050190059, “Accelerationbased Theft Detection System for Portable Electronic Devices,” and U.S. Patent Publication421019401Attorney Docket No.: P71055W01 / 77770000-858501No. 20060017692, “Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer,” both of which are incorporated by reference herein in their entirety. In some embodiments, information is displayed on the touch screen display in a portrait view or a landscape view based on an analysis of data received from the one or more accelerometers. Device 100 optionally includes, in addition to accelerometer(s) 168, a magnetometer and a GPS (or GLONASS or other global navigation system) receiver for obtaining information concerning the location and orientation (e.g., portrait or landscape) of device 100.

[0118] In some embodiments, the software components stored in memory 102 include operating system 126, biometric module 109, communication module (or set of instructions) 128, contact / motion module (or set of instructions) 130, graphics module (or set of instructions) 132, text input module (or set of instructions) 134, Global Positioning System (GPS) module (or set of instructions) 135, authentication module 105, and applications (or sets of instructions) 136. Furthermore, in some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3 A) stores device / global internal state 157, as shown in FIGS. 1A and 3 A.Device / global internal state 157 includes one or more of: active application state, indicating which applications, if any, are currently active; display state, indicating what applications, views or other information occupy various regions of touch screen display 112; sensor state, including information obtained from the device’s various sensors and input control devices 116; and location information concerning the device’s location and / or attitude.

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

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

[0121] Biometric module 109 optionally stores information about one or more enrolled biometric features (e.g., fingerprint feature information, facial recognition feature information, eye and / or iris feature information) for use to verify whether received biometric information matches the enrolled biometric features. In some embodiments, the information stored about the one or more enrolled biometric features includes data that enables the comparison between the stored information and received biometric information without including enough information to reproduce the enrolled biometric features. In some embodiments, biometric module 109 stores the information about the enrolled biometric features in association with a user account of device 100. In some embodiments, biometric module 109 compares the received biometric information to an enrolled biometric feature to determine whether the received biometric information matches the enrolled biometric feature.

[0122] Contact / motion module 130 optionally detects contact with touch screen 112 (in conjunction with display controller 156) and other touch-sensitive devices (e.g., a touchpad or physical click wheel). Contact / motion module 130 includes various software components for performing various operations related to detection of contact, such as determining if contact has occurred (e.g., detecting a finger-down event), determining an intensity of the contact (e.g., the force or pressure of the contact or a substitute for the force or pressure of the contact), determining if there is movement of the contact and tracking the movement across the touch-sensitive surface (e.g., detecting one or more finger-dragging events), and determining if the contact has ceased (e.g., detecting a finger-up event or a break in contact). Contact / motion module 130 receives contact data from the touch-sensitive surface.Determining movement of the point of contact, which is represented by a series of contact data, optionally includes determining speed (magnitude), velocity (magnitude and direction), and / or an acceleration (a change in magnitude and / or direction) of the point of contact. These operations are, optionally, applied to single contacts (e.g., one finger contacts) or to multiple simultaneous contacts (e.g., “multitouch” / multiple finger contacts). In some embodiments, contact / motion module 130 and display controller 156 detect contact on a touchpad.

[0123] In some embodiments, contact / motion module 130 uses a set of one or more intensity thresholds to determine whether an operation has been performed by a user (e.g., to determine whether a user has “clicked” on an icon). In some embodiments, at least a subset of the intensity thresholds are determined in accordance with software parameters (e.g., the intensity thresholds are not determined by the activation thresholds of particular physical441019401Attorney Docket No.: P71055W01 / 77770000-858501actuators and can be adjusted without changing the physical hardware of device 100). For example, a mouse “click” threshold of a trackpad or touch screen display can be set to any of a large range of predefined threshold values without changing the trackpad or touch screen display hardware. Additionally, in some implementations, a user of the device is provided with software settings for adjusting one or more of the set of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or by adjusting a plurality of intensity thresholds at once with a system-level click “intensity” parameter).

[0124] Contact / motion module 130 optionally detects a gesture input by a user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different motions, timings, and / or intensities of detected contacts). Thus, a gesture is, optionally, detected by detecting a particular contact pattern. For example, detecting a finger tap gesture includes detecting a finger-down event followed by detecting a finger-up (liftoff) event at the same position (or substantially the same position) as the finger-down event (e.g., at the position of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger-down event followed by detecting one or more finger-dragging events, and subsequently followed by detecting a finger-up (liftoff) event.

[0125] Graphics module 132 includes various known software components for rendering and displaying graphics on touch screen 112 or other display, including components for changing the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual property) of graphics that are displayed. As used herein, the term “graphics” includes any object that can be displayed to a user, including, without limitation, text, web pages, icons (such as user-interface objects including soft keys), digital images, videos, animations, and the like.

[0126] In some embodiments, graphics module 132 stores data representing graphics to be used. Each graphic is, optionally, assigned a corresponding code. Graphics module 132 receives, from applications etc., one or more codes specifying graphics to be displayed along with, if necessary, coordinate data and other graphic property data, and then generates screen image data to output to display controller 156.

[0127] Haptic feedback module 133 includes various software components for generating instructions used by tactile output generator(s) 167 to produce tactile outputs at one or more locations on device 100 in response to user interactions with device 100.451019401Attorney Docket No.: P71055W01 / 77770000-858501

[0128] Text input module 134, which is, optionally, a component of graphics module 132, provides soft keyboards for entering text in various applications (e.g., contacts module 137, e-mail client module 140, IM module 141, browser module 147, and any other application that needs text input).

[0129] GPS module 135 determines the location of the device and provides this information for use in various applications (e.g., to telephone module 138 for use in locationbased dialing; to camera module 143 as picture / video metadata; and to applications that provide location-based services such as weather widgets, local yellow page widgets, and map / navigation widgets).

[0130] Authentication module 105 determines whether a requested operation (e.g., requested by an application of applications 136) is authorized to be performed. In some embodiments, authentication module 105 receives for an operation to be perform that optionally requires authentication. Authentication module 105 determines whether the operation is authorized to be performed, such as based on a series of factors, including the lock status of device 100, the location of device 100, whether a security delay has elapsed, whether received biometric information matches enrolled biometric features, and / or other factors. Once authentication module 105 determines that the operation is authorized to be performed, authentication module 105 triggers performance of the operation.

[0131] Applications 136 optionally include the following modules (or sets of instructions), or a subset or superset thereof:• Contacts module 137 (sometimes called an address book or contact list);• Telephone module 138;• Video conference module 139;• E-mail client module 140;• Instant messaging (IM) module 141;• Workout support module 142;• Camera module 143 for still and / or video images;461019401Attorney Docket No.: P71055W01 / 77770000-858501• Image management module 144;• Video player module;• Music player module;• Browser module 147;• Calendar module 148;• Widget modules 149, which optionally include one or more of: weather widget 149-1, stocks widget 149-2, calculator widget 149-3, alarm clock widget 149-4, dictionary widget 149-5, and other widgets obtained by the user, as well as user-created widgets 149-6;• Widget creator module 150 for making user-created widgets 149-6;• Search module 151;• Video and music player module 152, which merges video player module and music player module;• Notes module 153;• Map module 154; and / or• Online video module 155.

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

[0133] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, contacts module 137 are, optionally, used to manage an address book or contact list (e.g., stored in application internal state 192 of contacts module 137 in memory 102 or memory 370), including: adding name(s) to the address book; deleting name(s) from the address book; associating telephone number(s), e-mail address(es), physical address(es) or other information with a name;471019401Attorney Docket No.: P71055W01 / 77770000-858501associating an image with a name; categorizing and sorting names; providing telephone numbers or e-mail addresses to initiate and / or facilitate communications by telephone module 138, video conference module 139, e-mail client module 140, or IM module 141; and so forth.

[0134] In conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, telephone module 138 are optionally, used to enter a sequence of characters corresponding to a telephone number, access one or more telephone numbers in contacts module 137, modify a telephone number that has been entered, dial a respective telephone number, conduct a conversation, and disconnect or hang up when the conversation is completed. As noted above, the wireless communication optionally uses any of a plurality of communications standards, protocols, and technologies.

[0135] In conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, display controller 156, optical sensor 164, optical sensor controller 158, contact / motion module 130, graphics module 132, text input module 134, contacts module 137, and telephone module 138, video conference module 139 includes executable instructions to initiate, conduct, and terminate a video conference between a user and one or more other participants in accordance with user instructions.

[0136] In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, e-mail client module 140 includes executable instructions to create, send, receive, and manage e-mail in response to user instructions. In conjunction with image management module 144, e-mail client module 140 makes it very easy to create and send e-mails with still or video images taken with camera module 143.

[0137] In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, the instant messaging module 141 includes executable instructions to enter a sequence of characters corresponding to an instant message, to modify previously entered characters, to transmit a respective instant message (for example, using a Short Message Service (SMS) or Multimedia Message Service (MMS) protocol for telephony -based instant messages or using XMPP, SIMPLE, or IMPS for Internet-based instant messages), to receive instant messages,481019401Attorney Docket No.: P71055W01 / 77770000-858501and to view received instant messages. In some embodiments, transmitted and / or received instant messages optionally include graphics, photos, audio files, video files and / or other attachments as are supported in an MMS and / or an Enhanced Messaging Service (EMS). As used herein, “instant messaging” refers to both telephony-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).

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

[0139] In conjunction with touch screen 112, display controller 156, optical sensor(s) 164, optical sensor controller 158, contact / motion module 130, graphics module 132, and image management module 144, camera module 143 includes executable instructions to capture still images or video (including a video stream) and store them into memory 102, modify characteristics of a still image or video, or delete a still image or video from memory 102.

[0140] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, and camera module 143, image management module 144 includes executable instructions to arrange, modify (e.g., edit), or otherwise manipulate, label, delete, present (e.g., in a digital slide show or album), and store still and / or video images.

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

[0142] In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, e-mail client 491019401Attorney Docket No.: P71055W01 / 77770000-858501module 140, and browser module 147, calendar module 148 includes executable instructions to create, display, modify, and store calendars and data associated with calendars (e.g., calendar entries, to-do lists, etc.) in accordance with user instructions.

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

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

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

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

[0147] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, notes module 153 includes 501019401Attorney Docket No.: P71055W01 / 77770000-858501executable instructions to create and manage notes, to-do lists, and the like in accordance with user instructions.

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

[0149] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, text input module 134, e-mail client module 140, and browser module 147, online video module 155 includes instructions that allow the user to access, browse, receive (e.g., by streaming and / or download), play back (e.g., on the touch screen or on an external, connected display via external port 124), send an e-mail with a link to a particular online video, and otherwise manage online videos in one or more file formats, such as H.264. In some embodiments, instant messaging module 141, rather than e-mail client module 140, is used to send a link to a particular online video. Additional description of the online video application can be found in U.S. Provisional Patent Application No. 60 / 936,562, “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos,” filed June 20, 2007, and U.S. Patent Application No. 11 / 968,067, “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos,” filed December 31, 2007, the contents of which are hereby incorporated by reference in their entirety.

[0150] Each of the above-identified modules and applications corresponds to a set of executable instructions for performing one or more functions described above and the methods described in this application (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., sets of instructions) need not be implemented as separate software programs (such as computer programs (e.g., including instructions)), procedures, or modules, and thus various subsets of these modules are, optionally, combined or otherwise rearranged in various embodiments. For example, video player module is, optionally, combined with music player module into a single module (e.g., video and music player module 152, FIG. 1A). In some embodiments, memory 102511019401Attorney Docket No.: P71055W01 / 77770000-858501optionally stores a subset of the modules and data structures identified above. Furthermore, memory 102 optionally stores additional modules and data structures not described above.

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

[0152] The predefined set of functions that are performed exclusively through a touch screen and / or a touchpad optionally include navigation between user interfaces. In some embodiments, the touchpad, when touched by the user, navigates device 100 to a main, home, or root menu from any user interface that is displayed on device 100. In such embodiments, a “menu button” is implemented using a touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device instead of a touchpad.

[0153] FIG. IB is a block diagram illustrating exemplary components for event handling in accordance with some embodiments. In some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3A) includes event sorter 170 (e.g., in operating system 126) and a respective application 136-1 (e.g., any of the aforementioned applications 137-151, 155, 380-390).

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

[0155] In some embodiments, application internal state 192 includes additional information, such as one or more of: resume information to be used when application 136-1 resumes execution, user interface state information that indicates information being displayed or that is ready for display by application 136-1, a state queue for enabling the user to go521019401Attorney Docket No.: P71055W01 / 77770000-858501back to a prior state or view of application 136-1, and a redo / undo queue of previous actions taken by the user.

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

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

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

[0159] Hit view determination module 172 provides software procedures for determining where a sub-event has taken place within one or more views when touch-sensitive display 112 displays more than one view. Views are made up of controls and other elements that a user can see on the display.

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

[0161] Hit view determination module 172 receives information related to sub-events of a touch-based gesture. When an application has multiple views organized in a hierarchy, hit 531019401Attorney Docket No.: P71055W01 / 77770000-858501view determination module 172 identifies a hit view as the lowest view in the hierarchy which should handle the sub-event. In most circumstances, the hit view is the lowest level view in which an initiating sub-event occurs (e.g., the first sub-event in the sequence of subevents that form an event or potential event). Once the hit view is identified by the hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source for which it was identified as the hit view.

[0162] Active event recognizer determination module 173 determines which view or views within a view hierarchy should receive a particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, active event recognizer determination module 173 determines that all views that include the physical location of a sub-event are actively involved views, and therefore determines that all actively involved views should receive a particular sequence of sub-events. In other embodiments, even if touch sub-events were entirely confined to the area associated with one particular view, views higher in the hierarchy would still remain as actively involved views.

[0163] Event dispatcher module 174 dispatches the event information to an event recognizer (e.g., event recognizer 180). In embodiments including active event recognizer determination module 173, event dispatcher module 174 delivers the event information to an event recognizer determined by active event recognizer determination module 173. In some embodiments, event dispatcher module 174 stores in an event queue the event information, which is retrieved by a respective event receiver 182.

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

[0165] In some embodiments, application 136-1 includes a plurality of event handlers 190 and one or more application views 191, each of which includes instructions for handling touch events that occur within a respective view of the application’s user interface. Each application view 191 of the application 136-1 includes one or more event recognizers 180. Typically, a respective application view 191 includes a plurality of event recognizers 180. In other embodiments, one or more of event recognizers 180 are part of a separate module, such 541019401Attorney Docket No.: P71055W01 / 77770000-858501as a user interface kit or a higher level object from which application 136-1 inherits methods and other properties. In some embodiments, a respective event handler 190 includes one or more of data updater 176, object updater 177, GUI updater 178, and / or event data 179 received from event sorter 170. Event handler 190 optionally utilizes or calls data updater 176, object updater 177, or GUI updater 178 to update the application internal state 192. Alternatively, one or more of the application views 191 include one or more respective event handlers 190. Also, in some embodiments, one or more of data updater 176, object updater 177, and GUI updater 178 are included in a respective application view 191.

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

[0167] Event receiver 182 receives event information from event sorter 170. The event information includes information about a sub-event, for example, a touch or a touch movement. Depending on the sub-event, the event information also includes additional information, such as location of the sub-event. When the sub-event concerns motion of a touch, the event information optionally also includes speed and direction of the sub-event. In some embodiments, events include rotation of the device from one orientation to another (e.g., from a portrait orientation to a landscape orientation, or vice versa), and the event information includes corresponding information about the current orientation (also called device attitude) of the device.

[0168] Event comparator 184 compares the event information to predefined event or subevent definitions and, based on the comparison, determines an event or sub-event, or determines or updates the state of an event or sub-event. In some embodiments, event comparator 184 includes event definitions 186. Event definitions 186 contain definitions of events (e.g., predefined sequences of sub-events), for example, event 1 (187-1), event 2 (187-2), and others. In some embodiments, sub-events in an event (e.g., 187-1 and / or 187-2) include, for example, touch begin, touch end, touch movement, touch cancellation, and multiple touching. In one example, the definition for event 1 (187-1) is a double tap on a displayed object. The double tap, for example, comprises a first touch (touch begin) on the displayed object for a predetermined phase, a first liftoff (touch end) for a predetermined 551019401Attorney Docket No.: P71055W01 / 77770000-858501phase, a second touch (touch begin) on the displayed object for a predetermined phase, and a second liftoff (touch end) for a predetermined phase. In another example, the definition for event 2 (187-2) is a dragging on a displayed object. The dragging, for example, comprises a touch (or contact) on the displayed object for a predetermined phase, a movement of the touch across touch-sensitive display 112, and liftoff of the touch (touch end). In some embodiments, the event also includes information for one or more associated event handlers 190.

[0169] In some embodiments, event definitions 186 include a definition of an event for a respective user-interface object. In some embodiments, event comparator 184 performs a hit test to determine which user-interface object is associated with a sub-event. For example, in an application view in which three user-interface objects are displayed on touch-sensitive display 112, when a touch is detected on touch-sensitive display 112, event comparator 184 performs a hit test to determine which of the three user-interface objects is associated with the touch (sub-event). If each displayed object is associated with a respective event handler 190, the event comparator uses the result of the hit test to determine which event handler 190 should be activated. For example, event comparator 184 selects an event handler associated with the sub-event and the object triggering the hit test.

[0170] In some embodiments, the definition for a respective event (187) also includes delayed actions that delay delivery of the event information until after it has been determined whether the sequence of sub-events does or does not correspond to the event recognizer’s event type.

[0171] When a respective event recognizer 180 determines that the series of sub-events do not match any of the events in event definitions 186, the respective event recognizer 180 enters an event impossible, event failed, or event ended state, after which it disregards subsequent sub-events of the touch-based gesture. In this situation, other event recognizers, if any, that remain active for the hit view continue to track and process sub-events of an ongoing touch-based gesture.

[0172] In some embodiments, a respective event recognizer 180 includes metadata 183 with configurable properties, flags, and / or lists that indicate how the event delivery system should perform sub-event delivery to actively involved event recognizers. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate 561019401Attorney Docket No.: P71055W01 / 77770000-858501how event recognizers interact, or are enabled to interact, with one another. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate whether sub-events are delivered to varying levels in the view or programmatic hierarchy.

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

[0174] In some embodiments, event delivery instructions 188 include sub-event delivery instructions that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery instructions deliver event information to event handlers associated with the series of sub-events or to actively involved views. Event handlers associated with the series of sub-events or with actively involved views receive the event information and perform a predetermined process.

[0175] In some embodiments, data updater 176 creates and updates data used in application 136-1. For example, data updater 176 updates the telephone number used in contacts module 137, or stores a video file used in video player module. In some embodiments, object updater 177 creates and updates objects used in application 136-1. For example, object updater 177 creates a new user-interface object or updates the position of a user-interface object. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends it to graphics module 132 for display on a touch-sensitive display.

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

[0177] It shall be understood that the foregoing discussion regarding event handling of user touches on touch-sensitive displays also applies to other forms of user inputs to operate 571019401Attorney Docket No.: P71055W01 / 77770000-858501multifunction devices 100 with input devices, not all of which are initiated on touch screens. For example, mouse movement and mouse button presses, optionally coordinated with single or multiple keyboard presses or holds; contact movements such as taps, drags, scrolls, etc. on touchpads; pen stylus inputs; movement of the device; oral instructions; detected eye movements; biometric inputs; and / or any combination thereof are optionally utilized as inputs corresponding to sub-events which define an event to be recognized.

[0178] FIG. 2 illustrates a portable multifunction device 100 having a touch screen 112 in accordance with some embodiments. The touch screen optionally displays one or more graphics within user interface (UI) 200. In this embodiment, as well as others described below, a user is enabled to select one or more of the graphics by making a gesture on the graphics, for example, with one or more fingers 202 (not drawn to scale in the figure) or one or more styluses 203 (not drawn to scale in the figure). In some embodiments, selection of one or more graphics occurs when the user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (from left to right, right to left, upward and / or downward), and / or a rolling of a finger (from right to left, left to right, upward and / or downward) that has made contact with device 100. In some implementations or circumstances, inadvertent contact with a graphic does not select the graphic. For example, a swipe gesture that sweeps over an application icon optionally does not select the corresponding application when the gesture corresponding to selection is a tap.

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

[0180] In some embodiments, device 100 includes touch screen 112, menu button 204, push button 206 for powering the device on / off and locking the device, volume adjustment button(s) 208, subscriber identity module (SIM) card slot 210, headset jack 212, and docking / charging external port 124. Push button 206 is, optionally, used to turn the power on / off on the device by depressing the button and holding the button in the depressed state for a predefined time interval; to lock the device by depressing the button and releasing the button before the predefined time interval has elapsed; and / or to unlock the device or initiate 581019401Attorney Docket No.: P71055W01 / 77770000-858501an unlock process. In an alternative embodiment, device 100 also accepts verbal input for activation or deactivation of some functions through microphone 113. Device 100 also, optionally, includes one or more contact intensity sensors 165 for detecting intensity of contacts on touch screen 112 and / or one or more tactile output generators 167 for generating tactile outputs for a user of device 100.

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

[0182] Each of the above-identified elements in FIG. 3 A is, optionally, stored in one or more of the previously mentioned memory devices. Each of the above-identified modules corresponds to a set of instructions for performing a function described above. The aboveidentified modules or computer programs (e.g., sets of instructions or including instructions) need not be implemented as separate software programs (such as computer programs (e.g., including instructions)), procedures, or modules, and thus various subsets of these modules are, optionally, combined or otherwise rearranged in various embodiments. In some embodiments, memory 370 optionally stores a subset of the modules and data structures identified above. Furthermore, memory 370 optionally stores additional modules and data structures not described above.

[0183] Implementations within the scope of the present disclosure can be partially or entirely realized using a tangible computer-readable storage medium (or multiple tangible computer-readable storage media of one or more types) encoding one or more computer-readable instructions. It should be recognized that computer-readable instructions can be organized in any format, including applications, widgets, processes, software, and / or components.

[0184] Implementations within the scope of the present disclosure include a computer-readable storage medium that encodes instructions organized as an application (e.g., application 3160) that, when executed by one or more processing units, control an electronic device (e.g., device 3150) to perform the method of FIG. 3B, the method of FIG. 3C, and / or one or more other processes and / or methods described herein.

[0185] It should be recognized that application 3160 (shown in FIG. 3D) can be any suitable type of application, including, for example, one or more of: a browser application, an application that functions as an execution environment for plug-ins, widgets or other applications, a fitness application, a health application, a digital payments application, a media application, a social network application, a messaging application, and / or a maps application. In some embodiments, application 3160 is an application that is pre-installed on device 3150 at purchase (e.g., a first-party application). In some embodiments, application 3160 is an application that is provided to device 3150 via an operating system update file 601019401Attorney Docket No.: P71055W01 / 77770000-858501(e.g., a first-party application or a second-party application). In some embodiments, application 3160 is an application that is provided via an application store. In some embodiments, the application store can be an application store that is pre-installed on device 3150 at purchase (e.g., a first-party application store). In some embodiments, the application store is a third-party application store (e.g., an application store that is provided by another application store, downloaded via a network, and / or read from a storage device).

[0186] Referring to FIG. 3B and FIG. 3F, application 3160 obtains information (e.g., 3010). In some embodiments, at 3010, information is obtained from at least one hardware component of device 3150. In some embodiments, at 3010, information is obtained from at least one software module of device 3150. In some embodiments, at 3010, information is obtained from at least one hardware component external to device 3150 (e.g., a peripheral device, an accessory device, and / or a server). In some embodiments, the information obtained at 3010 includes positional information, time information, notification information, user information, environment information, electronic device state information, weather information, media information, historical information, event information, hardware information, and / or motion information. In some embodiments, in response to and / or after obtaining the information at 3010, application 3160 provides the information to a system (e.g., 3020).

[0187] In some embodiments, the system (e.g., 3110 shown in FIG. 3E) is an operating system hosted on device 3150. In some embodiments, the system (e.g., 3110 shown in FIG.3E) is an external device (e.g., a server, a peripheral device, an accessory, and / or a personal computing device) that includes an operating system.

[0188] Referring to FIG. 3C and FIG. 3G, application 3160 obtains information (e.g., 3030). In some embodiments, the information obtained at 3030 includes positional information, time information, notification information, user information, environment information electronic device state information, weather information, media information, historical information, event information, hardware information, and / or motion information. In response to and / or after obtaining the information at 3030, application 3160 performs an operation with the information (e.g., 3040). In some embodiments, the operation performed at 3040 includes: providing a notification based on the information, sending a message based on the information, displaying the information, controlling a user interface of a fitness application based on the information, controlling a user interface of a health application based 611019401Attorney Docket No.: P71055W01 / 77770000-858501on the information, controlling a focus mode based on the information, setting a reminder based on the information, adding a calendar entry based on the information, and / or calling an API of system 3110 based on the information.

[0189] In some embodiments, one or more steps of the method of FIG. 3B and / or the method of FIG. 3C is performed in response to a trigger. In some embodiments, the trigger includes detection of an event, a notification received from system 3110, a user input, and / or a response to a call to an API provided by system 3110.

[0190] In some embodiments, the instructions of application 3160, when executed, control device 3150 to perform the method of FIG. 3B and / or the method of FIG. 3C by calling an application programming interface (API) (e.g., API 3190) provided by system 3110. In some embodiments, application 3160 performs at least a portion of the method of FIG. 3B and / or the method of FIG. 3C without calling API 3190.

[0191] In some embodiments, one or more steps of the method of FIG. 3B and / or the method of FIG. 3C includes calling an API (e.g., API 3190) using one or more parameters defined by the API. In some embodiments, the one or more parameters include a constant, a key, a data structure, an object, an object class, a variable, a data type, a pointer, an array, a list or a pointer to a function or method, and / or another way to reference a data or other item to be passed via the API.

[0192] Referring to FIG. 3D, device 3150 is illustrated. In some embodiments, device 3150 is a personal computing device, a smart phone, a smart watch, a fitness tracker, a head mounted display (HMD) device, a media device, a communal device, a speaker, a television, and / or a tablet. As illustrated in FIG. 3D, device 3150 includes application 3160 and an operating system (e.g., system 3110 shown in FIG. 3E). Application 3160 includes application implementation module 3170 and API-calling module 3180. System 3110 includes API 3190 and implementation module 3100. It should be recognized that device 3150, application 3160, and / or system 3110 can include more, fewer, and / or different components than illustrated in FIGS. 3D and 3E.

[0193] In some embodiments, application implementation module 3170 includes a set of one or more instructions corresponding to one or more operations performed by application 3160. For example, when application 3160 is a messaging application, application implementation module 3170 can include operations to receive and send messages. In some 621019401Attorney Docket No.: P71055W01 / 77770000-858501embodiments, application implementation module 3170 communicates with API-calling module 3180 to communicate with system 3110 via API 3190 (shown in FIG. 3E).

[0194] In some embodiments, API 3190 is a software module (e.g., a collection of computer-readable instructions) that provides an interface that allows a different module (e.g., API-calling module 3180) to access and / or use one or more functions, methods, procedures, data structures, classes, and / or other services provided by implementation module 3100 of system 3110. For example, API-calling module 3180 can access a feature of implementation module 3100 through one or more API calls or invocations (e.g., embodied by a function or a method call) exposed by API 3190 (e.g., a software and / or hardware module that can receive API calls, respond to API calls, and / or send API calls) and can pass data and / or control information using one or more parameters via the API calls or invocations. In some embodiments, API 3190 allows application 3160 to use a service provided by a Software Development Kit (SDK) library. In some embodiments, application 3160 incorporates a call to a function or method provided by the SDK library and provided by API 3190 or uses data types or objects defined in the SDK library and provided by API 3190. In some embodiments, API-calling module 3180 makes an API call via API 3190 to access and use a feature of implementation module 3100 that is specified by API 3190. In such embodiments, implementation module 3100 can return a value via API 3190 to API-calling module 3180 in response to the API call. The value can report to application 3160 the capabilities or state of a hardware component of device 3150, including those related to aspects such as input capabilities and state, output capabilities and state, processing capability, power state, storage capacity and state, and / or communications capability. In some embodiments, API 3190 is implemented in part by firmware, microcode, or other low level logic that executes in part on the hardware component.

[0195] In some embodiments, API 3190 allows a developer of API-calling module 3180 (which can be a third-party developer) to leverage a feature provided by implementation module 3100. In such embodiments, there can be one or more API-calling modules (e.g., including API-calling module 3180) that communicate with implementation module 3100. In some embodiments, API 3190 allows multiple API-calling modules written in different programming languages to communicate with implementation module 3100 (e.g., API 3190 can include features for translating calls and returns between implementation module 3100 and API-calling module 3180) while API 3190 is implemented in terms of a specific631019401Attorney Docket No.: P71055W01 / 77770000-858501programming language. In some embodiments, API-calling module 3180 calls APIs from different providers such as a set of APIs from an OS provider, another set of APIs from a plug-in provider, and / or another set of APIs from another provider (e.g., the provider of a software library) or creator of the another set of APIs.

[0196] Examples of API 3190 can include one or more of: a pairing API (e.g., for establishing secure connection, e.g., with an accessory), a device detection API (e.g., for locating nearby devices, e.g., media devices and / or smartphone), a payment API, a UIKit API (e.g., for generating user interfaces), a location detection API, a locator API, a maps API, a health sensor API, a sensor API, a messaging API, a push notification API, a streaming API, a collaboration API, a video conferencing API, an application store API, an advertising services API, a web browser API (e.g., WebKit API), a vehicle API, a networking API, a WiFi API, a Bluetooth API, an NFC API, a UWB API, a fitness API, a smart home API, contact transfer API, photos API, camera API, and / or image processing API. In some embodiments, the sensor API is an API for accessing data associated with a sensor of device 3150. For example, the sensor API can provide access to raw sensor data. For another example, the sensor API can provide data derived (and / or generated) from the raw sensor data. In some embodiments, the sensor data includes temperature data, image data, video data, audio data, heart rate data, IMU (inertial measurement unit) data, lidar data, location data, GPS data, and / or camera data. In some embodiments, the sensor includes one or more of an accelerometer, temperature sensor, infrared sensor, optical sensor, heartrate sensor, barometer, gyroscope, proximity sensor, temperature sensor, and / or biometric sensor.

[0197] In some embodiments, implementation module 3100 is a system (e.g., operating system and / or server system) software module (e.g., a collection of computer-readable instructions) that is constructed to perform an operation in response to receiving an API call via API 3190. In some embodiments, implementation module 3100 is constructed to provide an API response (via API 3190) as a result of processing an API call. By way of example, implementation module 3100 and API-calling module 3180 can each be any one of an operating system, a library, a device driver, an API, an application program, or other module. It should be understood that implementation module 3100 and API-calling module 3180 can be the same or different type of module from each other. In some embodiments, implementation module 3100 is embodied at least in part in firmware, microcode, or hardware logic.641019401Attorney Docket No.: P71055W01 / 77770000-858501

[0198] In some embodiments, implementation module 3100 returns a value through API 3190 in response to an API call from API-calling module 3180. While API 3190 defines the syntax and result of an API call (e.g., how to invoke the API call and what the API call does), API 3190 might not reveal how implementation module 3100 accomplishes the function specified by the API call. Various API calls are transferred via the one or more application programming interfaces between API-calling module 3180 and implementation module 3100. Transferring the API calls can include issuing, initiating, invoking, calling, receiving, returning, and / or responding to the function calls or messages. In other words, transferring can describe actions by either of API-calling module 3180 or implementation module 3100. In some embodiments, a function call or other invocation of API 3190 sends and / or receives one or more parameters through a parameter list or other structure.

[0199] In some embodiments, implementation module 3100 provides more than one API, each providing a different view of or with different aspects of functionality implemented by implementation module 3100. For example, one API of implementation module 3100 can provide a first set of functions and can be exposed to third-party developers, and another API of implementation module 3100 can be hidden (e.g., not exposed) and provide a subset of the first set of functions and also provide another set of functions, such as testing or debugging functions which are not in the first set of functions. In some embodiments, implementation module 3100 calls one or more other components via an underlying API and thus is both an API-calling module and an implementation module. It should be recognized that implementation module 3100 can include additional functions, methods, classes, data structures, and / or other features that are not specified through API 3190 and are not available to API-calling module 3180. It should also be recognized that API-calling module 3180 can be on the same system as implementation module 3100 or can be located remotely and access implementation module 3100 using API 3190 over a network. In some embodiments, implementation module 3100, API 3190, and / or API-calling module 3180 is stored in a machine-readable medium, which includes any mechanism for storing information in a form readable by a machine (e.g., a computer or other data processing system). For example, a machine-readable medium can include magnetic disks, optical disks, random access memory; read only memory, and / or flash memory devices.

[0200] An application programming interface (API) is an interface between a first software process and a second software process that specifies a format for communication651019401Attorney Docket No.: P71055W01 / 77770000-858501between the first software process and the second software process. Limited APIs (e.g., private APIs or partner APIs) are APIs that are accessible to a limited set of software processes (e.g., only software processes within an operating system or only software processes that are approved to access the limited APIs). Public APIs that are accessible to a wider set of software processes. Some APIs enable software processes to communicate about or set a state of one or more input devices (e.g., one or more touch sensors, proximity sensors, visual sensors, motion / orientation sensors, pressure sensors, intensity sensors, sound sensors, wireless proximity sensors, biometric sensors, buttons, switches, rotatable elements, and / or external controllers). Some APIs enable software processes to communicate about and / or set a state of one or more output generation components (e.g., one or more audio output generation components, one or more display generation components, and / or one or more tactile output generation components). Some APIs enable particular capabilities (e.g., scrolling, handwriting, text entry, image editing, and / or image creation) to be accessed, performed, and / or used by a software process (e.g., generating outputs for use by a software process based on input from the software process). Some APIs enable content from a software process to be inserted into a template and displayed in a user interface that has a layout and / or behaviors that are specified by the template.

[0201] Many software platforms include a set of frameworks that provides the core objects and core behaviors that a software developer needs to build software applications that can be used on the software platform. Software developers use these objects to display content onscreen, to interact with that content, and to manage interactions with the software platform. Software applications rely on the set of frameworks for their basic behavior, and the set of frameworks provides many ways for the software developer to customize the behavior of the application to match the specific needs of the software application. Many of these core objects and core behaviors are accessed via an API. An API will typically specify a format for communication between software processes, including specifying and grouping available variables, functions, and protocols. An API call (sometimes referred to as an API request) will typically be sent from a sending software process to a receiving software process as a way to accomplish one or more of the following: the sending software process requesting information from the receiving software process (e.g., for the sending software process to take action on), the sending software process providing information to the receiving software process (e.g., for the receiving software process to take action on), the sending software process requesting action by the receiving software process, or the sending software process 661019401Attorney Docket No.: P71055W01 / 77770000-858501providing information to the receiving software process about action taken by the sending software process. Interaction with a device (e.g., using a user interface) will in some circumstances include the transfer and / or receipt of one or more API calls (e.g., multiple API calls) between multiple different software processes (e.g., different portions of an operating system, an application and an operating system, or different applications) via one or more APIs (e.g., via multiple different APIs). For example, when an input is detected the direct sensor data is frequently processed into one or more input events that are provided (e.g., via an API) to a receiving software process that makes some determination based on the input events, and then sends (e.g., via an API) information to a software process to perform an operation (e.g., change a device state and / or user interface) based on the determination. While a determination and an operation performed in response could be made by the same software process, alternatively the determination could be made in a first software process and relayed (e.g., via an API) to a second software process, that is different from the first software process, that causes the operation to be performed by the second software process.Alternatively, the second software process could relay instructions (e.g., via an API) to a third software process that is different from the first software process and / or the second software process to perform the operation. It should be understood that some or all user interactions with a computer system could involve one or more API calls within a step of interacting with the computer system (e.g., between different software components of the computer system or between a software component of the computer system and a software component of one or more remote computer systems). It should be understood that some or all user interactions with a computer system could involve one or more API calls between steps of interacting with the computer system (e.g., between different software components of the computer system or between a software component of the computer system and a software component of one or more remote computer systems).

[0202] In some embodiments, the application can be any suitable type of application, including, for example, one or more of: a browser application, an application that functions as an execution environment for plug-ins, widgets or other applications, a fitness application, a health application, a digital payments application, a media application, a social network application, a messaging application, and / or a maps application.

[0203] In some embodiments, the application is an application that is pre-installed on the first computer system at purchase (e.g., a first-party application). In some embodiments, the671019401Attorney Docket No.: P71055W01 / 77770000-858501application is an application that is provided to the first computer system via an operating system update file (e.g., a first-party application). In some embodiments, the application is an application that is provided via an application store. In some embodiments, the application store is pre-installed on the first computer system at purchase (e.g., a first-party application store) and allows download of one or more applications. In some embodiments, the application store is a third-party application store (e.g., an application store that is provided by another device, downloaded via a network, and / or read from a storage device). In some embodiments, the application is a third-party application (e.g., an app that is provided by an application store, downloaded via a network, and / or read from a storage device). In some embodiments, the application controls the first computer system to perform method 700 (FIG.7), 800 (FIG. 8), 1000 (FIG. 10), 1200 (FIG. 12), 1400 (FIG. 14), 1500 (FIG. 15), 1600 (FIG.16), and / or 1800 (FIG. 18) by calling an application programming interface (API) provided by the system process using one or more parameters.

[0204] In some embodiments, exemplary APIs provided by the system process include one or more of a pairing API (e.g., for establishing secure connection, e.g., with an accessory), a device detection API (e.g., for locating nearby devices, e.g., media devices and / or smartphone), a payment API, a UIKit API (e.g., for generating user interfaces), a location detection API, a locator API, a maps API, a health sensor API, a sensor API, a messaging API, a push notification API, a streaming API, a collaboration API, a video conferencing API, an application store API, an advertising services API, a web browser API (e.g., WebKit API), a vehicle API, a networking API, a WiFi API, a Bluetooth API, an NFC API, a UWB API, a fitness API, a smart home API, contact transfer API, a photos API, a camera API, and / or an image processing API.

[0205] In some embodiments, at least one API is a software module (e.g., a collection of computer-readable instructions) that provides an interface that allows a different module (e.g., API-calling module 3180) to access and use one or more functions, methods, procedures, data structures, classes, and / or other services provided by an implementation module of the system process. The API can define one or more parameters that are passed between the API-calling module and the implementation module. In some embodiments, API 3190 defines a first API call that can be provided by API-calling module 3180. The implementation module is a system software module (e.g., a collection of computer-readable instructions) that is constructed to perform an operation in response to receiving an API call681019401Attorney Docket No.: P71055W01 / 77770000-858501via the API. In some embodiments, the implementation module is constructed to provide an API response (via the API) as a result of processing an API call. In some embodiments, the implementation module is included in the device (e.g., 3150) that runs the application. In some embodiments, the implementation module is included in an electronic device that is separate from the device that runs the application.

[0206] Attention is now directed towards embodiments of user interfaces that are, optionally, implemented on, for example, portable multifunction device 100.

[0207] FIG. 4A illustrates an exemplary user interface for a menu of applications on portable multifunction device 100 in accordance with some embodiments. Similar user interfaces are, optionally, implemented on device 300. In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof:• Signal strength indicator(s) 402 for wireless communication(s), such as cellular and Wi-Fi signals;• Time 404;• Bluetooth indicator 405;• Battery status indicator 406;• Tray 408 with icons for frequently used applications, such as:o Icon 416 for telephone module 138, labeled “Phone,” which optionally includes an indicator 414 of the number of missed calls or voicemail messages;o Icon 418 for e-mail client module 140, labeled “Mail,” which optionally includes an indicator 410 of the number of unread e-mails;o Icon 420 for browser module 147, labeled “Browser;” ando Icon 422 for video and music player module 152, also referred to as iPod (trademark of Apple Inc.) module 152, labeled “iPod;” and• Icons for other applications, such as:o Icon 424 for IM module 141, labeled “Messages;”691019401Attorney Docket No.: P71055W01 / 77770000-858501o Icon 426 for calendar module 148, labeled “Calendar;”o Icon 428 for image management module 144, labeled “Photos;”o Icon 430 for camera module 143, labeled “Camera;”o Icon 432 for online video module 155, labeled “Online Video;”o Icon 434 for stocks widget 149-2, labeled “Stocks;”o Icon 436 for map module 154, labeled “Maps;”o Icon 438 for weather widget 149-1, labeled “Weather;”o Icon 440 for alarm clock widget 149-4, labeled “Clock;”o Icon 442 for workout support module 142, labeled “Workout Support;” o Icon 444 for notes module 153, labeled “Notes;” ando Icon 446 for a settings application or module, labeled “Settings,” which provides access to settings for device 100 and its various applications 136.

[0208] It should be noted that the icon labels illustrated in FIG. 4A are merely exemplary. For example, icon 422 for video and music player module 152 is labeled “Music” or “Music Player.” Other labels are, optionally, used for various application icons. In some embodiments, a label for a respective application icon includes a name of an application corresponding to the respective application icon. In some embodiments, a label for a particular application icon is distinct from a name of an application corresponding to the particular application icon.

[0209] FIG. 4B illustrates an exemplary user interface on a device (e.g., device 300, FIG.3 A) with a touch-sensitive surface 451 (e.g., a tablet or touchpad 355, FIG. 3 A) that is separate from the display 450 (e.g., touch screen display 112). Device 300 also, optionally, includes one or more contact intensity sensors (e.g., one or more of sensors 359) for detecting intensity of contacts on touch-sensitive surface 451 and / or one or more tactile output generators 357 for generating tactile outputs for a user of device 300.

[0210] Although some of the examples that follow will be given with reference to inputs on touch screen display 112 (where the touch-sensitive surface and the display are combined), in some embodiments, the device detects inputs on a touch-sensitive surface that is separate from the display, as shown in FIG. 4B. In some embodiments, the touch-sensitive 701019401Attorney Docket No.: P71055W01 / 77770000-858501surface (e.g., touch-sensitive surface 451 in FIG. 4B) has a primary axis (e.g., 452 in FIG. 4B) that corresponds to a primary axis (e.g., 453 in FIG. 4B) on the display (e.g., display 450). In accordance with these embodiments, the device detects contacts (e.g., contact 460 and contact 462 in FIG. 4B) with the touch-sensitive surface 451 at locations that correspond to respective locations on the display (e.g., in FIG. 4B, contact 460 corresponds to 468 and contact 462 corresponds to 470). In this way, user inputs (e.g., contacts 460 and 462, and movements thereof) detected by the device on the touch-sensitive surface (e.g., touch-sensitive surface 451 in FIG. 4B) are used by the device to manipulate the user interface on the display (e.g., display 450 in FIG. 4B) of the multifunction device when the touch-sensitive surface is separate from the display. It should be understood that similar methods are, optionally, used for other user interfaces described herein.

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

[0212] FIG. 5A illustrates exemplary personal electronic device 500. Device 500 includes body 502. In some embodiments, device 500 can include some or all of the features described with respect to devices 100 and 300 (e.g., FIGS. 1A-4B). In some embodiments, device 500 has touch-sensitive display screen 504, hereafter touch screen 504. Alternatively, or in addition to touch screen 504, device 500 has a display and a touch-sensitive surface. As with devices 100 and 300, in some embodiments, touch screen 504 (or the touch-sensitive surface) optionally includes one or more intensity sensors for detecting intensity of contacts (e.g., touches) being applied. The one or more intensity sensors of touch screen 504 (or the touch-sensitive surface) can provide output data that represents the intensity of touches. The user711019401Attorney Docket No.: P71055W01 / 77770000-858501interface of device 500 can respond to touches based on their intensity, meaning that touches of different intensities can invoke different user interface operations on device 500.

[0213] Exemplary techniques for detecting and processing touch intensity are found, for example, in related applications: International Patent Application Serial No.PCT / US2013 / 040061, titled “Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application,” filed May 8, 2013, published as WIPO Publication No. WO / 2013 / 169849, and International Patent Application Serial No. PCT / US2013 / 069483, titled “Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships,” filed November 11, 2013, published as WIPO Publication No. WO / 2014 / 105276, each of which is hereby incorporated by reference in their entirety.

[0214] In some embodiments, device 500 has one or more input mechanisms 506 and 508. Input mechanisms 506 and 508, if included, can be physical. Examples of physical input mechanisms include push buttons and rotatable mechanisms. In some embodiments, device 500 has one or more attachment mechanisms. Such attachment mechanisms, if included, can permit attachment of device 500 with, for example, hats, eyewear, earrings, necklaces, shirts, jackets, bracelets, watch straps, chains, trousers, belts, shoes, purses, backpacks, and so forth. These attachment mechanisms permit device 500 to be worn by a user.

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

[0216] Input mechanism 508 is, optionally, a microphone, in some examples. Personal electronic device 500 optionally includes various sensors, such as GPS sensor 532,721019401Attorney Docket No.: P71055W01 / 77770000-858501accelerometer 534, directional sensor 540 (e.g., compass), gyroscope 536, motion sensor 538, and / or a combination thereof, all of which can be operatively connected to I / O section 514.

[0217] Memory 518 of personal electronic device 500 can include one or more non-transitory computer-readable storage mediums, for storing computer-executable instructions, which, when executed by one or more computer processors 516, for example, can cause the computer processors to perform the techniques described below, including processes 700, 800, 1000, 1200, 1400, 1500, 1600, and 1800 (FIGS. 7, 8, 10, 12, 14, 15, 16, and 18). A computer-readable storage medium can be any medium that can tangibly contain or store computer-executable instructions for use by or in connection with the instruction execution system, apparatus, or device. In some examples, the storage medium is a transitory computer-readable storage medium. In some examples, the storage medium is a non-transitory computer-readable storage medium. The non-transitory computer-readable storage medium can include, but is not limited to, magnetic, optical, and / or semiconductor storages. Examples of such storage include magnetic disks, optical discs based on CD, DVD, or Blu-ray® technologies, as well as persistent solid-state memory such as flash, solid-state drives, and the like. Personal electronic device 500 is not limited to the components and configuration of FIG. 5B, but can include other or additional components in multiple configurations.

[0218] As used here, the term “affordance” refers to a user-interactive graphical user interface object that is, optionally, displayed on the display screen of devices 100, 300, and / or 500 (FIGS. 1 A, 3 A, and 5A-5B). For example, an image (e.g., icon), a button, and text (e.g., hyperlink) each optionally constitute an affordance.

[0219] As used herein, the term “focus selector” refers to an input element that indicates a current part of a user interface with which a user is interacting. In some implementations that include a cursor or other location marker, the cursor acts as a “focus selector” so that when an input (e.g., a press input) is detected on a touch-sensitive surface (e.g., touchpad 355 in FIG. 3 A or touch-sensitive surface 451 in FIG. 4B) while the cursor is over a particular user interface element (e.g., a button, window, slider, or other user interface element), the particular user interface element is adjusted in accordance with the detected input. In some implementations that include a touch screen display (e.g., touch-sensitive display system 112 in FIG. 1 A or touch screen 112 in FIG. 4 A) that enables direct interaction with user interface elements on the touch screen display, a detected contact on the touch screen acts as a “focus selector” so that when an input (e.g., a press input by the contact) is detected on the touch 731019401Attorney Docket No.: P71055W01 / 77770000-858501screen display at a location of a particular user interface element (e.g., a button, window, slider, or other user interface element), the particular user interface element is adjusted in accordance with the detected input. In some implementations, focus is moved from one region of a user interface to another region of the user interface without corresponding movement of a cursor or movement of a contact on a touch screen display (e.g., by using a tab key or arrow keys to move focus from one button to another button); in these implementations, the focus selector moves in accordance with movement of focus between different regions of the user interface. Without regard to the specific form taken by the focus selector, the focus selector is generally the user interface element (or contact on a touch screen display) that is controlled by the user so as to communicate the user’s intended interaction with the user interface (e.g., by indicating, to the device, the element of the user interface with which the user is intending to interact). For example, the location of a focus selector (e.g., a cursor, a contact, or a selection box) over a respective button while a press input is detected on the touch-sensitive surface (e.g., a touchpad or touch screen) will indicate that the user is intending to activate the respective button (as opposed to other user interface elements shown on a display of the device).

[0220] As used in the specification and claims, the term “characteristic intensity” of a contact refers to a characteristic of the contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on multiple intensity samples. The characteristic intensity is, optionally, based on a predefined number of intensity samples, or a set of intensity samples collected during a predetermined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) relative to a predefined event (e.g., after detecting the contact, prior to detecting liftoff of the contact, before or after detecting a start of movement of the contact, prior to detecting an end of the contact, before or after detecting an increase in intensity of the contact, and / or before or after detecting a decrease in intensity of the contact). A characteristic intensity of a contact is, optionally, based on one or more of: a maximum value of the intensities of the contact, a mean value of the intensities of the contact, an average value of the intensities of the contact, a top 10 percentile value of the intensities of the contact, a value at the half maximum of the intensities of the contact, a value at the 90 percent maximum of the intensities of the contact, or the like. In some embodiments, the duration of the contact is used in determining the characteristic intensity (e.g., when the characteristic intensity is an average of the intensity of the contact over time). In some embodiments, the characteristic intensity is compared to a set of one or more intensity thresholds to determine 741019401Attorney Docket No.: P71055W01 / 77770000-858501whether an operation has been performed by a user. For example, the set of one or more intensity thresholds optionally includes a first intensity threshold and a second intensity threshold. In this example, a contact with a characteristic intensity that does not exceed the first threshold results in a first operation, a contact with a characteristic intensity that exceeds the first intensity threshold and does not exceed the second intensity threshold results in a second operation, and a contact with a characteristic intensity that exceeds the second threshold results in a third operation. In some embodiments, a comparison between the characteristic intensity and one or more thresholds is used to determine whether or not to perform one or more operations (e.g., whether to perform a respective operation or forgo performing the respective operation), rather than being used to determine whether to perform a first operation or a second operation.

[0221] As used herein, an “installed application” refers to a software application that has been downloaded onto an electronic device (e.g., devices 100, 300, and / or 500) and is ready to be launched (e.g., become opened) on the device. In some embodiments, a downloaded application becomes an installed application by way of an installation program that extracts program portions from a downloaded package and integrates the extracted portions with the operating system of the computer system.

[0222] As used herein, the terms “open application” or “executing application” refer to a software application with retained state information (e.g., as part of device / global internal state 157 and / or application internal state 192). An open or executing application is, optionally, any one of the following types of applications:• an active application, which is currently displayed on a display screen of the device that the application is being used on;• a background application (or background processes), which is not currently displayed, but one or more processes for the application are being processed by one or more processors; and• a suspended or hibernated application, which is not running, but has state information that is stored in memory (volatile and non-volatile, respectively) and that can be used to resume execution of the application.751019401Attorney Docket No.: P71055W01 / 77770000-858501

[0223] As used herein, the term “closed application” refers to software applications without retained state information (e.g., state information for closed applications is not stored in a memory of the device). Accordingly, closing an application includes stopping and / or removing application processes for the application and removing state information for the application from the memory of the device. Generally, opening a second application while in a first application does not close the first application. When the second application is displayed and the first application ceases to be displayed, the first application becomes a background application.

[0224] In some embodiments, the computer system is in a locked state or an unlocked state. In the locked state, the computer system is powered on and operational but is prevented from performing a predefined set of operations in response to user input. The predefined set of operations optionally includes navigation between user interfaces, activation or deactivation of a predefined set of functions, and activation or deactivation of certain applications. The locked state can be used to prevent unintentional or unauthorized use of some functionality of the computer system or activation or deactivation of some functions on the computer system. In some embodiments, in the unlocked state, the computer system is powered on and operational and is not prevented from performing at least a portion of the predefined set of operations that cannot be performed while in the locked state. When the computer system is in the locked state, the computer system is said to be locked. When the computer system is in the unlocked state, the computer is said to be unlocked. In some embodiments, the computer system in the locked state optionally responds to a limited set of user inputs, including input that corresponds to an attempt to transition the computer system to the unlocked state or input that corresponds to powering the computer system off.

[0225] As described herein, content is automatically generated by one or more computers in response to a request to generate the content. The automatically-generated content is optionally generated on-device (e.g., generated at least in part by a computer system at which a request to generate the content is received) and / or generated off-device (e.g., generated at least in part by one or more nearby computers that are available via a local network or one or more computers that are available via the internet). This automatically-generated content optionally includes visual content (e.g., images, graphics, and / or video), audio content, and / or text content.761019401Attorney Docket No.: P71055W01 / 77770000-858501

[0226] In some embodiments, novel automatically-generated content that is generated via one or more artificial intelligence (Al) processes is referred to as generative content (e.g., generative images, generative graphics, generative video, generative audio, and / or generative text). Generative content is typically generated by an Al process based on a prompt that is provided to the Al process. An Al process typically uses one or more Al models to generate an output based on an input. An Al process optionally includes one or more pre-processing steps to adjust the input before it is used by the Al model to generate an output (e.g., adjustment to a user-provided prompt, creation of a system-generated prompt, and / or Al model selection). An Al process optionally includes one or more post-processing steps to adjust the output by the Al model (e.g., passing Al model output to a different Al model, upscaling, downscaling, cropping, formatting, and / or adding or removing metadata) before the output of the Al model used for other purposes, such as being provided to a different software process for further processing or being presented (e.g., visually or audibly) to a user. An Al process that generates generative content is sometimes referred to as a generative Al process.

[0227] A prompt for generating generative content can include one or more of one or more words (e.g., a natural language prompt that is written or spoken), one or more images, one or more drawings, and / or one or more videos. Al processes can include machine learning models including neural networks. Neural networks can include transformer-based deep neural networks such as large language models (LLMs). Generative pre-trained transformer models are a type of LLM that can be effective at generating novel generative content based on a prompt. Some Al processes use a prompt that includes text to generate either different generative text, generative audio content, and / or generative visual content. Some Al processes use a prompt that includes visual content and / or an audio content to generate generative text (e.g., a transcription of audio and / or a description of the visual content). Some multi-modal Al processes use a prompt that includes multiple types of content (e.g., text, images, audio, video, and / or other sensor data) to generate generative content. A prompt sometimes also includes values for one or more parameters indicating an importance of various parts of the prompt. Some prompts include a structured set of instructions that can be understood by an Al process that include phrasing, a specified style, relevant context (e.g., starting point content and / or one or more examples), and / or a role for the Al process.771019401Attorney Docket No.: P71055W01 / 77770000-858501

[0228] Generative content is generally based on the prompt but is not deterministically selected from pre-generated content and is, instead, generated using the prompt as a starting point. In some embodiments, pre-existing content (e.g., audio, text, and / or visual content) is used as part of the prompt for creating generative content (e.g., the pre-existing content is used as a starting point for creating the generative content). For example, a prompt could request that a block of text be summarized or rewritten in a different tone, and the output would be generative text that is summarized or written in the different tone. Similarly, a prompt could request that visual content be modified to include or exclude content specified by a prompt (e.g., removing an identified feature in the visual content, adding a feature to the visual content that is described in a prompt, changing a visual style of the visual content, and / or creating additional visual elements outside of a spatial or temporal boundary of the visual content that are based on the visual content). In some embodiments, a random or pseudo-random seed is used as part of the prompt for creating generative content (e.g., the random or pseudo-random seed content is used as a starting point for creating the generative content). For example, when generating an image from a diffusion model, a random noise pattern is iteratively denoised based on the prompt to generate an image that is based on the prompt. While specific types of Al processes have been described herein, it should be understood that a variety of different Al processes could be used to generate generative content based on a prompt.

[0229] Attention is now directed towards embodiments of user interfaces (“UP’) and associated processes that are implemented on an electronic device, such as portable multifunction device 100, device 300, or device 500.

[0230] FIGS. 6A-6S illustrate exemplary user interfaces for a camera application that provide users with options for readily switching between camera modes and / or accessing additional mode controls and exemplary user interfaces that maintain certain camera settings when switching between camera modes, in accordance with some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in FIGS. 7 and 8.

[0231] FIG. 6A illustrates a front view of device 600 displaying home screen 604 on display 602 (e.g., a touch- sensitive display). FIG. 6A1 illustrates a back view of device 600. Device 600 includes a set of cameras, including front facing camera 606 (FIG. 6A) and rear facing cameras 606A, 606B, and 606C (FIG. 6A1). In some embodiments, the set of cameras 781019401Attorney Docket No.: P71055W01 / 77770000-858501include different numbers of cameras, different arrangements of cameras, and / or different types of cameras. For example, the different types of cameras optionally include one or more wide-angle lenses, one or more telephoto lenses, and / or one or more macro lenses. For example, the different types of cameras optionally vary in geometry (e.g., physical or equivalent focal lengths, such as 5 mm, 13 mm, 22 mm, 24 mm, 28 mm, 50 mm, 77 mm, 100 mm, and / or 300 mm, or f-stops of f / 1.2, f / 1.78, f / 2.2, f / 2.8, f / 3.4, and / or f / 8.4), resolution (e.g., 8 MP, 12 MP, 24 MP, 48 MP, and / or 72 MP), pixel size (e.g., 100 nm, 0.5 pm, 1.0 pm, 2.44 pm, 5 pm), and / or presence of other hardware features (e.g., dual or quad pixels, dual pixel autofocus capabilities, and / or optical image stabilization capabilities). Device 600 further includes a plurality of buttons, including camera button 608 that can be used to access a camera application and / or perform one or more camera-related operations. In FIGS. 6A-6S, device 600 is a smartphone (e.g., a portable computer system with phone calling capabilities) that includes a plurality of cameras that can be used to capture visual media, including photos and videos. In some embodiments, the cameras of device 600 have one or more different types of lenses (e.g., wide-angle, ultra wide-angle, telephoto, and / or macro lenses), different lens geometries (e.g., physical or equivalent focal lengths, such as 5 mm, 13 mm, 22 mm, 24 mm, 28 mm, 50 mm, 77 mm, 100 mm, and / or 300 mm, or f-stops of f / 1.2, f / 1.78, f / 2.2, f / 2.8, f / 3.4, and / or f / 8.4), different sensor resolutions (e.g., 8 MP, 12 MP, 24 MP, 48 MP, and / or 72 MP), different sensor pixel sizes (e.g., 100 nm, 0.5 pm, 1.0 pm, 2.44 pm, 5 pm), and / or other varying camera hardware features (e.g., dual or quad pixels, dual pixel autofocus capabilities, and / or optical image stabilization capabilities). In some embodiments, device 600 includes and / or is in communication with different numbers of cameras, different arrangements of cameras, and / or different types of cameras than illustrated in FIG. 6A. For example, computer system 600 is in communication with one or more external cameras (e.g., cameras housed separately from the housing that includes display 602). In some embodiments, device 600 is a tablet computer, a laptop computer, a head-mounted device, or other computer system with one or more cameras and one or more displays. In some embodiments, device 600 includes one or more features of device 100, 300, and / or 500.

[0232] At FIG. 6A, home screen 604 includes a plurality of affordances (e.g., selectable user interface objects) that can be used to access various applications or functions of device 600, such as camera application affordance 604a that can be selected to launch a camera application. In some embodiments, home screen 604 is displayed when an application user interface is closed (e.g., when a currently active application is closed or inactivated). Home 791019401Attorney Docket No.: P71055W01 / 77770000-858501screen 604 also includes a plurality of status icons / indicators located along an upper edge of display 602 (e.g., in a status bar or status region), including time indicator 604b that indicates a current time of day, connection indicator 604c that indicates wireless connection status (e.g., cellular or WiFi connection status), and battery indicator 604d that indicates remaining battery power graphically and / or textually. In some embodiments, one or more of the status icons / indicators are managed and / or generated by an operating system of device 600. In some embodiments, one or more of the status icons / indicators continue to be displayed when an application is launched and an application user interface is displayed. At FIG. 6A, device 600 detects input 610 on camera button 608 and detects input 612a corresponding to camera application affordance 604a. In some embodiments, camera button 608 is a mechanical button that can be pressed / depressed. In some embodiments, camera button 608 is a touch-sensitive and / or intensity-sensitive button that can detect contact (e.g., finger contact) and / or detect the intensity of contact pressing on camera button 608. In some embodiments, input 612a and / or one or more of inputs 612b-612dd, discussed below, is a touch gesture (e.g., a tap, a swipe, or touch-and-hold), an air gesture (e.g., an air tap or air pinch), or a selection input (e.g., via a hardware input mechanism such as a button) that is detected while a respective user interface element (e.g., camera application affordance 604a) is selected and / or is in focus.

[0233] At FIG. 6B, in response to detecting input 610 on camera button 608 and / or input 612a corresponding to camera application affordance 604a, device 600 displays camera user interface 614. Camera user interface 614 includes various selectable user interface objects and indicators for configuring media capture functions and features, capturing media, and reviewing and / or editing captured media. Camera user interface 614 includes camera preview 614a, which includes a representation of a field-of-view of the environment captured by one or more of the cameras of computer system 600 that is framed (e.g., cropped) as it would currently be framed in media captured via camera user interface 614 (e.g., camera preview 614a is a live or near-live viewfinder). At FIG. 6B, camera preview 614a is a representation of the environment (e.g., a mountain landscape with subject 614al in the foreground) as captured by one or more of the rear facing cameras (e.g., rear facing cameras 606A, 606B, and / or 606C). Shutter affordance 614b is a software button that can be selected to initiate the capture of media in a currently selected capture mode using one or more current settings. Zoom affordance 614c is a control for changing the capture magnification and / or switching between cameras / lenses with different magnification; at FIG. 6B, zoom affordance 614c 801019401Attorney Docket No.: P71055W01 / 77770000-858501indicates that the current zoom level is IX (e.g., the IX indicator is enlarged relative to the 5X and 2X indicators where IX indicates a respective zoom level, 5X indicates a zoom level that is / i of the respective zoom level, and 2X indicates a zoom level that is twice the respective zoom level). Captured media affordance 614d is a selectable thumbnail icon that previews captured media and can be selected to view and / or edit captured media (e.g., in a media viewing or media library user interface). Camera selection affordance 614e is a software button for switching between capture using one or more rear cameras (e.g., environment-facing cameras, such as rear facing cameras 606A, 606B, and / or 606C) and using a front camera (e.g., user-facing camera, such as camera 606). Depth affordance 614f is a control for enabling and / or modifying a simulated (e.g., synthetic) depth-of-field effect that can be applied to captured media to create an appearance of depth (e.g., by blurring visual elements that are at different depths-of-field in the environment via a digital bokeh effect). Media format control affordance 614g includes indications of one or more settings / values relating to the format of captured media, such as file format and / or image resolution, and can be selected to modify one or more of those settings / values. At FIG. 6B, media format control affordance 614g includes unified format indicator 614gl that indicates, in a single composite indicator, that the camera application is currently configured to store captured images in a RAW file format (a camera file format with minimal data / image processing and compression) and to capture those images at a 24 megapixel resolution. Media format control affordance 614g also includes “live” effect indicator 614g2 that indicates that the camera application is currently configured to capture single frame photos and not configured to capture photo media with a limited duration (e.g., 1, 3, and / or 5 seconds), for example, including content from before and / or after a capture input is detected that can be displayed in sequence (e.g., in response to a user input such as a selection input or a movement input) for a “live” effect. Capture settings control affordance 614h includes indications of one or more settings for modifying media capture, such as settings for flash and / or low-light capture (e.g., a mode in which multiple images are captured and composited to improve image exposure / brightness in low light environments), and can be selected to modify one or more of those settings / values. At FIG. 6B, capture setting control affordance 614h includes flash indicator 614hl that is bolded to indicate that flash is currently set to an “on” mode (e.g., forced flash mode) and also includes low-light indicator 614h2 that indicates that low-light capture is currently disabled. Mode option affordance 614i can be used to quickly (e.g., via a single input) switch between a photo capture mode and a video capture mode. At FIG. 6B, the camera application is currently configured to capture photo media, as indicated by the bolding in mode option 811019401Attorney Docket No.: P71055W01 / 77770000-858501affordance 614i . In some embodiments, mode option affordance 614i operates as a toggle switch to toggle between different modes. In some embodiments, mode option affordance 614i includes more than two modes and a given mode can be selected by providing an input directed at a respective portion of mode option affordance 614i that corresponds to a given mode. Mode switcher option affordance 614j can be selected to display additional mode options and / or settings, as discussed in more detail, below.

[0234] In some embodiments, one or more of the user interface objects in camera user interface 614 are displayed with a simulated glass appearance, such that the object(s) appear to be made of, or include, a simulated glass material that is translucent or transparent. In such embodiments, the appearance of the object(s) changes as content below the object(s) changes. For example, zoom affordance 614c, which is overlaid on camera preview 614a, can have a simulated glass appearance that would result in the appearance of zoom affordance 614c changing as the representation of the environment under zoom affordance 614c changes (e.g., due to movement of device 600 or movement of elements within the environment, such as movement of subject 614al ). In some embodiments, one or more of the user interface objects in camera user interface 614 are translucent in a manner similar to that discussed with reference to certain user interface objects (e.g., shutter affordance 900b) of FIG. 9A.

[0235] At FIG. 6B, device 600 detects a number of inputs. In some embodiments, when device 600 is depicted detecting a plurality of inputs, as in FIG. 6B for example, the inputs are detected at different times; in some embodiments, two or more of the inputs are detected at the same time. Device 600 detects input 612b corresponding to mode switcher option affordance 614j ; the results of which are discussed in detail with reference to FIGS. 6C and 6D. Device 600 detects input 612c corresponding to depth affordance 614f; the results of which are discussed in detail with reference to FIG. 6M. Device 600 detects input 612d corresponding to media format control affordance 614g; the results of which are discussed in detail with reference to FIG. 60. Device 600 detects input 612e corresponding to capture settings control affordance 614h; the results of which are discussed in detail with reference to FIG. 6Q. Device 600 detects input 612f corresponding to camera selection affordance 614e; the results of which are discussed in detail with reference to FIG. 6R. Device 600 also detects input 612g corresponding to captured media affordance 614d; in response to detecting input 612g, device 600 displays a user interface for viewing and / or editing captured media (e.g., a media viewing or media library user interface). Device 600 also detects input 612h821019401Attorney Docket No.: P71055W01 / 77770000-858501corresponding to shutter affordance 614b; in response to detecting input 612h, device 600 captures media according to the currently set mode (e.g., a photo mode) and one or more currently selected settings and formats (e.g., capturing using flash at 24 megapixels and storing the captured photo in a RAW file format). Once device 600 captures a photo in response to detecting input 612h, device 600 updates captured media affordance 614d to show a thumbnail representation of the newly captured photo. Device 600 also detects input 612i corresponding to zoom affordance 614c; in response to detecting input 612i, device 600 changes a current zoom level and / or displays a zoom level selection wheel affordance (e.g., similar to the result discussed with reference to FIG. 6K). Device 600 also detects input 612j corresponding to mode option affordance 614i; in response to detecting input 612j , device 600 switches from the current photo capture mode to video capture mode, similar to the transition discussed with reference to FIGS. 6M and 6N.

[0236] At FIG. 6C, in response to detecting input 612b (e.g., in FIG. 6B) corresponding to mode switcher option affordance 614j, device 600 initiates a process to display additional mode options and / or settings. The process includes displaying an animation of mode switcher option affordance 614j expanding to merge with mode option affordance 614i and an animation of one or more other user interface objects shifting position to accommodate additional controls. In some embodiments, the animation further includes ceasing to display one or more user interface objects and / or showing one or more other user interface objects merging with one or more user interface objects, such as depth affordance 614f ceasing to be displayed or merging with mode option affordance 614i . FIG. 6C illustrates that process in an intermediate state, with mode switcher option affordance 614j and mode option affordance 614i merged to form intermediate mode switcher options platter 616. The intermediate state also shows shutter affordance 614b, zoom affordance 614c, captured media affordance 614d, and camera selection affordance 614e shifting upwards from the positions shown in FIG. 6B.

[0237] At FIG. 6D, the process to display additional mode options and / or settings, initiated by device 600 detecting input 612b (e.g., in FIG. 6B), has been completed. Device 600 displays shutter affordance 614b, zoom affordance 614c, captured media affordance 614d, and camera selection affordance 614e shifted further up from the intermediate positions at which they were displayed in FIG. 6C. Device 600 displays mode switcher options platter 618. Mode switcher options platter 618 includes a plurality of affordances for selecting different modes and for modifying settings of a currently selected mode. Depth option831019401Attorney Docket No.: P71055W01 / 77770000-858501affordance 618a is a control for enabling and / or modifying a simulated (e.g., synthetic) depth-of-field effect, in a manner similar to that described for depth affordance 614f. Spatial capture affordance 618b is a control for enabling a spatial capture mode (e.g., a mode for capturing media that can later be displayed with stereoscopic depth). Panoramic mode affordance 618c is a control for enabling a panoramic capture mode (e.g., as discussed with reference to FIG.6L). Styles affordance 618d is a control for selecting from a plurality of sets of capture settings (e.g., styles) that modify values such as tone, warmth, contrast, and / or exposure. Aspect ratio affordance 618e is a control for modifying the aspect ratio (e.g., a 4:3 ratio, 1 : 1 ratio, or 16:9 ratio) of captured media. Exposure affordance 618f is a control for selecting an exposure value (e.g., as discussed with reference to FIGS. 6H-6J). Close affordance 618g is a control for closing mode switcher options platter 618. Mode option affordance 614i is now integrated into the bottom portion of mode switcher options platter 618.

[0238] At FIG. 6D, device 600 detects a number of inputs on affordances in mode switcher options platter 618. Device 600 detects input 612k corresponding to depth option affordance 618a; the results of which are discussed in detail with reference to FIG. 6E.Device 600 detects input 6121 corresponding to spatial capture affordance 618b; in response to detecting input 6121, device 600 configures the camera application to capture spatial photos (e.g., because the photo mode is currently enabled). In some embodiments, if spatial capture affordance 618b is selected while the camera application is in a video mode, the camera application would be configured to capture spatial videos. Device 600 detects input 612m corresponding to depth option affordance 618a; the results of which are discussed in detail with reference to FIG. 6L. Device 600 detects input 612m corresponding to styles affordance 618d; in response to detecting input 612m, device 600 enables a photographic style, modifies a currently selected photographic style, and / or displays one or more additional controls for selecting from a set of available styles. Device 600 detects input 612n corresponding to aspect ratio affordance 618e; in response to detecting input 612n, device 600 modifies a current aspect ratio (e.g., by cycling through available aspect ratios), and / or displays one or more additional controls for selecting from a set of available aspect ratios. Device 600 detects input 612o, which is leftwards swipe input corresponding to mode switcher options platter 618; the results of which are discussed in detail with reference to FIG. 6F. Device 600 detects input 612p corresponding to close affordance 618g; in response to detecting input 612p, device 600 closes mode switcher options platter 618, returning camera user interface 614 to the state shown in FIG. 6B. In some embodiments, closing mode 841019401Attorney Docket No.: P71055W01 / 77770000-858501switcher options platter 618 includes displaying an animation of mode switcher option affordance 614j and mode option affordance 614i unmerging (e.g., displays an animation that is the reverse of the animation discussed with reference to FIG. 6C).

[0239] At FIG. 6E, in response to detecting input 612k (e.g., in FIG. 6D) corresponding to depth option affordance 618a and while remaining in a photo capture mode, device 600 configures the camera application to capture photo media with a simulated depth-of-field effect. Device 600 also updates camera preview 614a to provide a preview of the simulated depth-of-field effect that shows the background (e.g., the mountains and the clouds) with a blurring effect while subject 614al in the foreground remains in focus. Device 600 also updates mode switcher options platter 618 to include depth effect control affordance 618g that is a slider for selecting a magnitude of the simulated depth-of-field effect. At FIG. 6E, the simulated depth-of-field effect has a magnitude equivalent to an f-stop value of 2.8. One or more inputs (e.g., swipe inputs) can be directed to depth effect control affordance 618g to increase or decrease the magnitude of the simulated depth-of-field effect. In some embodiments, mode switcher options platter 618 can be returned to the state shown in FIG.6D, while maintaining the simulated depth-of-field effect at the selected value, by providing an input directed to depth effect indicator 618h or by providing a swipe input on camera preview 614a (e.g., in a manner similar to that discussed with reference to FIGS. 61 and 6J).

[0240] At FIG. 6F, in response to leftward swipe input 612o (e.g., in FIG. 6D) corresponding to mode switcher options platter 618 and while remaining in a photo capture mode, device 600 scrolls the controls displayed in mode switcher options platter 618 to display one or more additional controls. At FIG. 6F, mode switcher options platter 618 now includes timer affordance 618h and a portion of filter affordance 618i; depth option affordance 618a is no longer included in mode switcher options platter 618 while a portion of spatial capture affordance 618b remains. Timer affordance 618h, when selected via an input, enables a capture delay timer (e.g., a 3-second, 5-second, or 10-second timer), cycles through available timer options, and / or causes the display of additional timer options for selection. Filter affordance 618i, when selected via an input, enables a filter (e.g., vivid, sepia, or black-and-white), cycles through available filter options, and / or causes the display of additional filter options for selection. At FIG. 6F, device 600 detects input 612q corresponding to mode option affordance 614i.851019401Attorney Docket No.: P71055W01 / 77770000-858501

[0241] At FIG. 6G, in response to detecting input 612q (e.g., in FIG. 6F) corresponding to mode option affordance 614i, device 600 configures the camera application of camera user interface 614 to capture video media (e.g., captured in response to detecting input at shutter affordance 614b), as indicated by the updated appearance of mode option affordance 614i and shutter affordance 614b. Device 600 maintains certain settings in the same state that they were in when the camera application was configured to capture photo media (e.g., the same state as shown in FIGS. 6B and 6F). For example, depth mode remains disabled and flash remains set to “on,” as indicated by flash indicator 614hl in capture settings control affordance 614h. Device 600 also changes or updates certain other settings (e.g., settings that are not compatible with a video mode). For example, the low-light capture mode is not compatible with video media, and therefore control affordance 614h no longer includes low-light indicator 614h2. Similarly, media format control affordance 614g has been updated to indicate that video is being captured at a resolution of 4K (e.g., -4000 horizontal pixels) and a frame rate of 60 frames per second. Device 600 also, in response to detecting input 612q, updates the options included in mode switcher options platter 618. As shown in FIG. 6G, certain options that were previously displayed (e.g., as seen in 6D) that are applicable to the video capture mode remain (e.g., spatial capture affordance 618b, aspect ratio affordance 618e, and exposure affordance 618f) while other options (e.g., panoramic mode affordance 618c and styles affordance 618d) are no longer included in mode switcher options platter 618. Additional options that are compatible with the video capture mode and that are not, in some embodiments, compatible with the photo capture mode are now included in mode switcher options platter 618. Slow-motion affordance 618i is a control for enabling a slow-motion capture mode in which videos are captured with a higher frame rate to allow for slow motion playback. Cinematic affordance 618j is a control for enabling a video capture mode with a simulated depth effect (e.g., that simulates capture using a shallow depth of field) that can track subjects within the field-of-view of one or more cameras being used for capture. Time-lapse affordance 618k is a control for enabling video at selected intervals.

[0242] At FIG. 6G, device 600 detects input 612r corresponding to exposure affordance 618f; the results of which are discussed with reference to FIG. 6H. Device 600 also detects input 612s (e.g., a leftward swipe) corresponding to zoom affordance 614c; the results of which are discussed with reference to FIG. 6K.861019401Attorney Docket No.: P71055W01 / 77770000-858501

[0243] At Fig. 6H, in response to detecting input 612r (e.g., in FIG. 6G) corresponding to exposure affordance 618f, device 600, while remaining the video capture mode, updates mode switcher options platter 618 to include exposure control affordance 6181 that is a slider for selecting an exposure value (e.g., a value that controls the overall brightness or darkness of captured media). At FIG. 6H, exposure control affordance 6181 indicates the current exposure setting is 0.0 (e.g., no exposure correction). Device 600 detects input 612t (e.g., a leftward swipe) corresponding to exposure control affordance 6181.

[0244] At FIG. 61, in response to detecting input 612t (e.g., in FIG. 6H) corresponding to exposure control affordance 6181, device 600 changes the exposure value with which media will be captured (e.g., captured in response to detecting input at shutter affordance 614b) from 0.0 to +1.0. Device 600 also updates camera preview 614a to reflect the new exposure value with the represented environment appearing brighter. Device also displays indication 614k that indicates that the exposure value has been adjusted away from a default value (e.g., from 0.0 to +1.0). In some embodiments, one or more indicators are displayed when selected settings (e.g., exposure, timer, or capture duration) are modified from their default value. In some embodiments, such as that of FIG. 61, the indicator(s) are displayed in a status region or bar of the user interface. For example, indication 614k is displayed at the same region that time indicator 604b was displayed in FIG. 6B when home screen 604 was being displayed. In some embodiments, the indication is displayed at the location connection indicator 604c was displayed or the location battery indicator 604d was displayed. In some embodiments, the indicator(s) are textual and / or graphical indicator(s) (e.g., a graph or histogram). At FIG. 61, device 600 detects input 612u (e.g., a downward swipe) corresponding to camera preview 614a.

[0245] At FIG. 6J, in response to detecting input 612u (e.g., in FIG. 61) corresponding to camera preview 614a, device 600 ceases to display to exposure control affordance 6181 and returns mode switcher options platter 618 to the state shown in FIG. 6G (e.g., the state prior to input 612r corresponding to exposure affordance 618f). Device 600 continues to be configured to capture video media with an exposure correction value of +1.0, even though exposure control affordance 6181 is no longer displayed, and continues to display indication 614k showing that the exposure value has been adjusted to +1.0. At FIG. 6J, device 600 detects input 612v (e.g., an upwards swipe) corresponding to home affordance 6141 (e.g., a control for existing a currently active application and returning to home screen 604). In871019401Attorney Docket No.: P71055W01 / 77770000-858501response to detecting input 612v, device 600 ceases to display camera user interface 614 and redisplays home screen 604, which includes ceasing to display indication 614k in the location of the status bar and redisplaying time indicator 604b at the same location. In some embodiments, upon redisplaying camera user interface 614 (e.g., in response to an input directed at camera application affordance 604a), indication 614k is redisplayed and the camera application of camera user interface 614 continues to be configured to capture video media with a +1.0 exposure correction.

[0246] At FIG. 6K, in response to detecting input leftward swipe input 612s (e.g., in FIG.6G) corresponding to zoom affordance 614c, device 600 displays zoom control dial 614m, which indicates that the zoom level has been adjusted to 1.5X (e.g., based on a magnitude of the movement of input 612s). In some embodiments, after adjusting the zoom to 1.5X, device 600 ceases to display zoom control dial 614m and redisplays zoom affordance 614c, with an indication that the zoom value is now 1.5X. In some embodiments, an indicator of the updated zoom value is not displayed at the upper edge of display 602 even though the zoom value has been adjusted away from a default value, as zoom affordance 614c is available to indicate the changed zoom value, even after zoom control dial 614m is no longer displayed.

[0247] At FIG. 6L, in response to detecting input 6121 (e.g., in FIG. 6D) corresponding to panoramic mode affordance 618c, device 600 configures the camera application of camera user interface 614 to capture panoramic photos (e.g., captured in response to detecting input at shutter affordance 614b). Device 600 updates camera user interface 614 to include panoramic guidance indication 614n, which assists the user with properly handling and / or moving device 600 in order to capture a panoramic photo. Device 600 also ceases to display mode option affordance 614i, as the panoramic mode is incompatible with video media capture, and replaces mode option affordance 614i with panorama indication 614o that indicates that device 600 is currently configured to panoramic mode. Panorama indication 614o includes panoramic exit affordance 614ol that can be selected to exit the panoramic mode and return to photo mode. In some embodiments, device 600 displays camera user interface 614 in the state shown in FIG. 6D upon exiting the panoramic mode. In some embodiments, device 600 displays camera user interface 614 in the state shown in FIG. 6B upon exiting the panoramic mode (e.g., without mode switcher options platter 618).

[0248] At FIG. 6M, in response to detecting input 612c (e.g., in FIG. 6B) corresponding to depth affordance 614f and while remaining in a photo capture mode, device 600 configures 881019401Attorney Docket No.: P71055W01 / 77770000-858501the camera application to capture photo media with a simulated depth-of-field effect. Device 600 also updates camera preview 614a with a preview of the simulated depth-of-field effect that shows the background (e.g., the mountains and the clouds) with a blurring effect while subject 614al in the foreground remains in focus. Device 600 also updates the appearance of depth affordance 614f to indicate that the simulated depth-of-field effect is active. In some embodiments, a respective type of input (e.g., a touch-and-hold input) that corresponds to depth affordance 614f causes display of depth effect control affordance 618g (or a similar affordance for control the magnitude of a depth effect). At FIG. 6M, device 600 detects input 612w corresponding to depth affordance 614f and, in response, device 600 configures the camera application to capture photo media without the simulated depth-of-field effect (e.g., as shown in FIG. 6B). At FIG. 6M, device 600 detects input 612x corresponding to mode option affordance 614i.

[0249] At FIG. 6N, in response to detecting input 612x (e.g., in FIG. 6M) corresponding to mode option affordance 614i, device 600 configures the camera application of camera user interface 614 to capture video media (e.g., captured in response to detecting input at shutter affordance 614b), as indicated by the updated appearance of mode option affordance 614i and shutter affordance 614b. Device 600 continues to be configured to capture media (now video media) with the simulated depth-of-field effect, as shown by camera preview 614a and the appearance of depth affordance 614f. In some embodiments, a setting and / or mode that is compatible with both photo and video mode remains in a respective state when transitioning from photo mode to video mode or vice versa. In some embodiments, a setting and / or mode that is incompatible with both photo and video mode is disabled, modified, and / or replaced when transitioning from photo mode to video mode or vice versa, as described with reference to FIG. 6G.

[0250] At FIG. 60, in response to detecting input 612d (e.g., in FIG. 6B) corresponding to media format control affordance 614g, device displays media format control platter 614p. In some embodiments, device 600 displays an animation of media format control affordance 614g expanding to become media format control platter 614p. Media format control platter 614p includes indicators and affordances relating to various media format options and settings. In top row 614pl, media format control platter 614p includes indicators and affordances for file format. Because device 600 is currently configured to a photo capture mode, the file format options (e.g., RAW, HEIC, and JPEG) are photo file formats. At FIG.891019401Attorney Docket No.: P71055W01 / 77770000-85850160, device 600 is currently configured to store captured media using the RAW format, as indicated by the appearance of RAW affordance 614pla. In middle row 614p2, media format control platter 614p includes indicators and affordances for resolution. Because device 600 is currently configured to a photo capture mode, the resolution options (e.g., 12 megapixel, 24 megapixel, and 24 megapixel) are photo resolutions. At FIG. 60, device 600 is currently configured to capture photo media at a 24 megapixel resolution, as indicated by the appearance of 24MP affordance 614p2a. In bottom row 614p3, media format control platter 614p includes indicators and affordances for configuring capture of photo media with a limited duration (e.g., 1, 3, and / or 5 seconds, as discussed with reference to “live” effect indicator 614g2). Device 600 is currently configured to not capture photo media with the “live” effect, as indicated by the appearance of “live” effect off affordance 614p3c. At FIG.60, “live” effect auto affordance 614p3a and “live” effect on affordance 614p3b are greyed out, indicating that the “auto” and “on” options are not available, because they are incompatible with the RAW format. At FIG. 60, device 600 detects input 612y corresponding to JPEG affordance 614plb. At FIG. 60, device 600 detects input 612z corresponding to mode switcher option affordance 614j . In response to detecting input 612z, device 600 ceases to display media format control platter 614p and displays mode switcher options platter 618, as shown in FIG. 6D. In some embodiments, device 600 ceases to display and / or collapses a currently displayed / opened platter when another platter is invoked (e.g., via an input), doing so in order to conserve screen real estate.

[0251] At FIG. 6P, in response to detecting input 612y (e.g., in FIG. 60) corresponding to JPEG affordance 614plb, device 600 configures the camera application of camera user interface 614 to store captured photos in JPEG format and updates media format control platter 614p (e.g., updates the appearance of JPEG affordance 614plb). Because the JPEG file format is not compatible with 48 megapixel resolution photos, 48MP affordance 614p2b is greyed out. While the “live” effect option remains “off’ at FIG. 6P, because the JPEG file format is compatible with the “live” effect, “live” effect auto affordance 614p3a and “live” effect on affordance 614p3b are no longer greyed out, indicating that they are available for selection.

[0252] At FIG. 6Q, in response to detecting input 612e (e.g., in FIG. 6B) corresponding to capture settings control affordance 614h, device displays capture settings control platter 614q. In some embodiments, device 600 displays an animation of capture settings control901019401Attorney Docket No.: P71055W01 / 77770000-858501affordance 614h expanding to become capture settings control platter 614q. Capture settings control platter 614q includes indicators and affordances relating to various capture options and settings. In top row 614ql, capture settings control platter 614q includes indicators and affordances relating to flash settings and options, including “auto” affordance 614qla, “on” affordance 614qlb (bolded to indicate that flash is current set to “on”), and “off’ affordance 64qlc. In bottom row 614q2, capture settings control platter 614q includes indicators and affordances relating to low-light capture mode, including “auto” affordance 614q2a, “on” affordance 614q2b, and “off’ affordance 64q2c (bolded to indicate that low-light capture mode is “off’). “Auto” affordance 614q2a and “on” affordance 614q2b are greyed out, indicating that the “auto” and “on” options for low-light capture mode are not available because they are incompatible with flash being “on” (e.g., being forced “on”). At FIG. 6Q, device 600 detects input 612aa corresponding to “auto” affordance 614qla for the flash setting and, in response, configures the flash to an auto setting (e.g., a setting in which device 600 determines if a flash should be used during photo capture based on flash criteria (e.g., based on ambient light and / or one or more other photo settings, such as exposure)). Device 600 also, in response to detecting input 612aa, enables “auto” affordance 614q2a for low-light capture mode as the low-light capture mode, when set to “auto,” is compatible with the flash “auto” setting (e.g., while flash and low-light capture are mutually exclusive for a given photo capture event, device 600 can determine whether to use flash or low-light capture, depending on conditions at the time of capture). Device 600 does not, however, enable “on” affordance 614q2b for low light capture, as doing so would require flash to be disabled under all circumstances, which is inconsistent with the “auto” setting for flash. At FIG. 6Q, device 600 detects input 612bb corresponding to “off’ affordance 614qlc for the flash setting and, in response, configures the flash to an off mode and enables both “auto” affordance 614q2a and “on” affordance 614q2b for low light capture, as both of those modes are compatible with the flash being “off.”

[0253] At FIG. 6R, in response to detecting input 612f (e.g., in FIG. 6B) corresponding to camera selection affordance 614e, device 600 configures the camera application of camera user interface 614 to capture media (e.g., captured in response to detecting input at shutter affordance 614b) using front facing camera 606, as indicated by the update to camera preview 614a, which now shows user 614a2. While configured to use front facing camera 606, device 600 also displays front camera zoom affordance 614r, which is used to adjust a zoom level. At FIG. 6R, device 600 detects input 612cc corresponding to front camera zoom 911019401Attorney Docket No.: P71055W01 / 77770000-858501affordance 614r. In response to detecting input 612cc, device 600 zooms in (e.g., causing user 614a2 to appear larger in camera preview 614a) and updates the appearance of front camera zoom affordance 614r to reflect the new zoom level. At FIG. 6R, device 600 detects input 612dd (e.g., a leftward swipe) corresponding to camera preview 614a.

[0254] At FIG. 6S, in response to detecting input 612dd (e.g., in FIG. 6R) corresponding to camera preview 614a, device 600 configures the camera application of camera user interface 614 to capture video media (e.g., captured in response to detecting input at shutter affordance 614b), as indicated by the updated appearances of mode option affordance 614i and shutter affordance 614b. Device 600 continues to show camera preview 614a using front camera 606, as front camera 606 is compatible with both photo and video media capture.

[0255] FIG. 7 is a flow diagram illustrating a method for readily switching between camera modes and / or accessing additional mode controls using a computer system in accordance with some embodiments. Method 700 is performed at a computer system (e.g., 100, 300, 500, and / or 600) that is in communication with one or more display generation components (e.g., 602) (e.g., a display controller; a touch-sensitive display system; a display (e.g., integrated and / or connected), a 3D display, a transparent display, a projector, and / or a heads-up display), and one or more cameras (e.g., forward facing camera 606, rear facing cameras 606 A, 606B, and / or 606C, and / or externally-connected cameras, and / or a plurality of cameras with different lenses (e.g., different fixed focal lengths), such as a standard camera, a telephoto camera, a wide-angle camera, and / or a macro camera). Some operations in method 700 are, optionally, combined, the orders of some operations are, optionally, changed, and some operations are, optionally, omitted.

[0256] As described below, method 700 provides an intuitive way for readily switching between camera modes and / or accessing additional mode controls. The method reduces the cognitive burden on a user for readily switching between camera modes and / or accessing additional mode controls, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to readily between camera modes and / or access additional mode controls faster and more efficiently conserves power and increases the time between battery charges.

[0257] The computer system (e.g., 600) displays (702), via the one or more display generation components (e.g., 602), a camera user interface (e.g., 614) that includes921019401Attorney Docket No.: P71055W01 / 77770000-858501concurrently displaying: a live preview of content (e.g., 614b) from the one or more cameras (e.g., a preview based on a portion or all of a field-of-view(s) of one or more cameras); and a camera mode selection affordance (e.g., 614i in combination with 614j) (e.g., a user-selectable graphical element or a set of user-selectable graphical elements) that includes a plurality of options including concurrently displaying: a first set of one or more mode options (e.g., 614i) for switching between photo capture mode and video capture mode (in some embodiments, the first set of one or more mode operations operates as a toggle, such that input causes the mode to switch between photo capture mode and video capture mode and vice versa); a mode switcher option (e.g., 614j) for selecting additional modes for the camera user interface.

[0258] While displaying the camera user interface, the computer system detects (704), via the one or more input devices (e.g., 602 and / or 608), a selection input (e.g., 612f or 612j) (e.g., a touch input, an air gesture, and / or a button press) directed to the camera user interface.

[0259] In response to detecting the selection input (706) and in accordance with a determination that the selection input is directed to the mode switcher option (e.g., as shown in FIGS. 6B-6D), the computer system displays (708) a second set of mode options (e.g., 618a-618f) that correspond to different modes (e.g., modes other than photo mode and video capture mode, such as a panoramic mode or a time lapse mode). In some embodiments, displaying the second set of mode options includes remaining in a currently selected capture mode (e.g., the photo capture mode or video capture mode). In response to detecting the selection input and in accordance with a determination that the selection input is directed to the first set of one or more mode options (e.g., as shown in FIGS. 6F-6G or FIGS. 6M-6N), the computer system switches (710) the camera user interface between the photo mode and the video capture mode. Concurrently displaying a first set of one or more mode options for switching between photo capture mode and video capture mode and a mode switcher option provides the first set of options for switching between photo and video while also providing additional control options that are available upon request / input, without cluttering the UI with additional displayed controls when those controls are not required. Doing so enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating / interacting with the system) which, additionally, reduces power usage and improves battery life of the system by enabling the user to use the system more quickly and efficiently. Doing so also provides931019401Attorney Docket No.: P71055W01 / 77770000-858501improved visual feedback to the user that the additional second set of mode options are available for display.

[0260] In some embodiments, the camera user interface includes a capture affordance (e.g., 614b) (e.g., a selectable shutter button user interface object) that is concurrently displayed with the first set of one or more options and the mode switcher option. In such embodiments, in response to detecting the selection input, in accordance with a determination that the selection input is directed to the capture affordance, the computer system initiates capture of media with the one or more cameras in accordance with one or more selected camera modes (e.g., a mode indicated by 614i) (e.g., capturing a photo if the photo mode is selected and capturing a video if the video capture mode is selected). Concurrently displaying a capture affordance, the first set of one or more mode options for switching between photo capture mode and video capture mode, and the mode switcher option provides a control to capture media in a current mode, while also providing the first set of options for switching between photo and video and also providing additional control options that are available upon request / input, without cluttering the UI with additional displayed controls when those controls are not required.

[0261] In some embodiments, the camera user interface includes one or more action affordances (e.g., 614b, 614d, 614e, and / or 614f) (e.g., one or more affordances that, when selected, perform an action function, such as capturing media, changing a depth capture mode, switching a currently selected camera) that are concurrently displayed with the first set of one or more options and the mode switcher option. In such embodiments, in response to detecting the selection input, in accordance with a determination that the selection input is directed to the mode switcher option, shifting (e.g., shifting up) the one or more action affordances in the camera user interface (e.g., translating the displayed position of an action affordance from a first location to a different second location). Shifting one or more action affordances when the second set of mode options are displayed optimizes screen real estate by allowing the one or more action affordances to be displayed at a location at which the second set of mode options will be displayed (when invoked) while also continuing to display the one or more action affordances when the second set of mode options are displayed. Doing so also optimizes the display of the live preview of content by increasing and / or maximizing the size of the live preview of content, when the second set of mode options are not displayed. Optimizing the use of screen real estate and / or optimizing the display of the live941019401Attorney Docket No.: P71055W01 / 77770000-858501preview enhances the operability of the system and makes the user-system interface more efficient (e.g., by optimizing the usage of display real estate) which, additionally, reduces power usage and improves battery life of the system by enabling the user to use the system more quickly and efficiently.

[0262] In some embodiments, the one or more action affordances include one or more of: an affordance (e.g., 614d) that, when selected based on an input detected by the one or more input devices, causes the computer system to display a camera roll (e.g., a user interface for displaying previously captured media); an affordance (e.g., 614b) that, when selected based on an input detected by the one or more input devices, causes the computer system to capture media with the one or more cameras (e.g., a shutter button); an affordance (e.g., 614e) that, when selected based on an input detected by the one or more input devices, causes the computer system to switch which camera is being used to capture media (e.g., switching between different cameras on a same side of a housing of the computer system and or switching between different cameras on different sides of a housing of the computer system); and an affordance (e.g., 614c) that, when selected based on an input detected by the one or more input devices, causes the computer system to change a zoom level that is used to capture media with the one or more cameras. In some embodiments, a plurality of zoom affordances, including a zoom affordance for changing to a first zoom value (e.g., IX or 2X) and a zoom affordance for changing to a second zoom value (e.g., 3X or 5X).

[0263] In some embodiments, in response to detecting the selection input, in accordance with a determination that the selection input is directed to the mode switcher option, the computer system displays the second set of mode options (e.g., 618a-618f) (e.g., that correspond to different camera modes in a region of the camera user interface (e.g., the region occupied by 618 in FIG. 6D) that was previously occupied by the one or more action affordances (e.g., by at least one of the one or more action affordances). In some embodiments, at least one action affordance was displayed at a first location before shifting to a second location, different from the first location, and at least a portion of the second set of mode options is displayed at the first location. Displaying the second set of mode options that correspond to different camera modes in a region of the camera user interface that was previously occupied by the one or more action affordances optimizes the use of screen real estate, without cluttering the UI with additional displayed controls when those controls are not required.951019401Attorney Docket No.: P71055W01 / 77770000-858501

[0264] In some embodiments, in response to detecting the selection input, in accordance with a determination that the selection input is directed to the mode switcher option (e.g., as shown in FIGS. 6F-6G), the computer system maintains display of the first set of one or more mode options (e.g., 618b, 618d, and / or 618f) (in some embodiments, maintaining display at the same location, without shifting the first set of one or more mode options). Maintaining display of the first set of one or more mode options provides improved visual feedback that mode switching remains available, while the second set of mode options are displayed.

[0265] In some embodiments, maintaining display of the first set of one or more mode options includes displaying a second set of one or more mode options (e.g., options shown in 618 at FIG. 6G) that includes one or more mode options that are not included in the first set of one or more mode options. In some embodiments, when the photo mode is selected the mode options (e.g., for the photo mode) include one or more of: a portrait mode, spatial capture mode, panorama mode, aspect ratio control, exposure compensation control, and media capture style control without including one or more mode options that are specific to the video mode (e.g., time lapse capture option and / or a slow motion video capture option). In some embodiments, when the photo mode is selected the mode options (e.g., for the photo mode) include one or more of: a slow motion capture option, a time lapse capture option, a cinematic (e.g., portrait mode) video capture option, a spatial video capture option, an aspect ratio control, an exposure compensation control, and media capture style control without including one or more mode options that are specific to the photo mode (e.g., panorama capture option, and / or an exposure compensation option). In some embodiments, options that are similar between different modes are represented by a consistent user interface element (e.g., portrait mode and cinematic video mode are represented by the same user interface element and spatial photo capture and spatial video capture are represented by the same user interface element).

[0266] In some embodiments, in response to detecting the selection input, in accordance with a determination that the selection input is directed to the first set of one or more mode options, the computer system maintains display of the mode switcher option (e.g., 614i as seen in FIG. 6G). In some embodiments, maintaining display of one or more action affordances that were concurrently displayed with the first set of one or more options and the mode switcher option at the time the selection input was detected (in some embodiments, while display of the one or more action affordances are maintained, their position(s) are961019401Attorney Docket No.: P71055W01 / 77770000-858501shifted). Maintaining display of the mode switcher option while switching the camera user interface between the photo mode and the video capture mode provides improved visual feedback that mode option remains available in both the photo and video capture modes.

[0267] In some embodiments, the second set of one or more mode options includes a mode option selected from the set consisting of: photographic styles (e.g., 618e) (e.g., an option for adjusting / selecting customizations as to how media is captured), filters (e.g., 618i) (e.g., an option for applying a visual filter to captured media), aspect ratio (618d), exposure (e.g., 618f), spatial capture (e.g., 618b) (e.g., an option for enabling capturing media for display with stereoscopic depth), timer (e.g., 618h), and panorama (e.g., 618c) (e.g., an option for enabling a panoramic photo capture mode). Including certain mode options in the second set of mode options provides users with access to those options when requested, without cluttering the UI with additional displayed options when those options are not required.

[0268] In some embodiments, the second set of one or more mode options includes one or more (e.g., one or a plurality of) mode options that are compatible with both photo capture and video capture (e.g., 618d, 618e, and / or 618a) (e.g., the mode option(s) is supplemental / additive to the photo capture mode and to the video capture mode and can operate with either mode). In some embodiments, the mode option that is compatible with both photo capture and video capture is a depth capture mode (e.g., a mode that captures media with depth information such that the media, when viewed, includes depth effects such as bokeh / blurring) or a spatial capture mode (e.g., an option for enabling capturing media for display with stereoscopic depth). In some embodiments, capturing media (e.g., photo or video media) in the depth capture mode includes adding a simulated depth effect in which at least a portion of the background is blurred and a portion of the foreground is not blurred to simulate taking a photo or video with a shallow depth of field wherein the portion of the foreground is in the plane of focus. In some embodiments, capturing media (e.g., photo or video media) in the spatial capture mode includes capturing one or more images for a right eye and one or more images for a left eye that when viewed concurrently create an illusion of a spatial representation of a field-of-view of the one or more cameras. Including mode options that are compatible with both the photo and video capture modes provides users with access to those options when requested, without cluttering the UI with additional displayed options when those options are not required.971019401Attorney Docket No.: P71055W01 / 77770000-858501

[0269] In some embodiments, the camera user interface includes a camera switching affordance (e.g., 614c or 614e) that is concurrently displayed with the first set of one or more options and the mode switcher option. In response to detecting the selection input (e.g., 612f), in accordance with a determination that the selection input is directed to the camera switching affordance, the computer system switches which camera is being used to capture media for the camera user interface (e.g., switching between two cameras on different sides of a housing of the computer system or switching between two cameras on the same side of a housing of the computer system).

[0270] In some embodiments, the camera user interface includes a zoom affordance (614c) that is concurrently displayed with the first set of one or more options and the mode switcher option. In response to detecting the selection input, in accordance with a determination that the selection input is directed to the zoom affordance (e.g., 612i), the computer system changes a zoom level for capturing media with the one or more cameras. In some embodiments, the camera user interface includes a plurality of zoom affordances, for switching to a plurality of different zoom levels (e.g., IX, 2X, and 3X). In some embodiments, changing a zoom level for capturing media with the one or more cameras includes changing the zoom level of the live preview of content of the one or more cameras. In some embodiments, changing the zoom level includes digitally changing the zoom level, optically changing the zoom level, or doing both. In some embodiments, optically changing the zoom level includes changing the focal length of a zoom lens (e.g., an optical zoom lens). In some embodiments, optically changing the zoom level includes switching from using a first camera (e.g., a camera with a prime lens) having a first focal length to a second camera having a second focal length, different than the first focal length.

[0271] In some embodiments, the computer system detects, via the one or more input devices, a gesture (e.g., a touch or air gesture, such as a swipe) that includes movement directed to the zoom affordance (e.g., 612s). In response to detecting the gesture, the computer system changes a zoom level for capturing media with the one or more cameras in a direction that is based on a direction of the movement (e.g., FIGS. 6G and 6K) (e.g., zooming out if the movement is in a first direction and zooming in if it is in a different second direction).

[0272] In some embodiments, the computer system detects, via the one or more input devices, a gesture (e.g., a touch or air gesture, such as a swipe) that includes movement 981019401Attorney Docket No.: P71055W01 / 77770000-858501directed to the zoom affordance (e.g., 612s). In response to detecting the gesture, the computer system changes a zoom level for capturing media with the one or more cameras by an amount that is based on a magnitude (e.g., FIGS. 6G and 6K) (e.g., speed and / or distance) of the movement.

[0273] In some embodiments, while displaying the second set of one or more mode options, the computer system detects, via the one or more input devices, an input (612o) (e.g., a movement input or a swipe input) directed to the second set of one or more options. In response to detecting the input directed to the second set of one or more options, the computer system navigates (e.g., scrolling) through the second set of one or more options (e.g., as shown in FIGS. 6D and 6F) (e.g., ceasing to display one or more of the second set of one or more options and displaying an additional option in the second set of one or more options that was not previously displayed). Including additional options in the second set of one or more mode options are that accessible via a navigation input provides users with access to those options when requested, without cluttering the UI with additional displayed options when those options are not required.

[0274] In some embodiments, while displaying the second set of one or more mode options, the computer system detects, via the one or more input devices, a second input (e.g., 612k-612n) directed to the second set of one or more options; and In some embodiments, the second input (e.g., a tap, an air gesture, or a button press while a respective option is selected / highlighted) is directed to an exposure control and causes additional exposure-related options to be displayed (e.g., as seen in FIG. 6H). In some embodiments, the second input (e.g., a tap, an air gesture, or a button press) is directed to panoramic mode control and causes the camera user interface and computer system to be configured to capture media in a panoramic mode (e.g., as seen in FIG. 6L). In response to detecting the second input directed to the second set of one or more options, the computer system performs an operation corresponding to a respective option (e.g., selected option) of the second set of one or more options. In some embodiments, the operation is an operation not available to be selected in the camera user interface prior to displaying the second set of one or more mode options.

[0275] In some embodiments, performing the operation corresponding to a respective option of the second set of one or more options includes: in accordance with a determination that the input is directed to a first option (e.g., 618a) (e.g., a filter option) in the second set of one or more options, performing a first operation (e.g., the operation shown in FIG. 6E)991019401Attorney Docket No.: P71055W01 / 77770000-858501corresponding to the first option (e.g., displaying a set of selectable filters); and in accordance with a determination that the input is directed to a second option (e.g., 612m) (e.g., a spatial capture mode option) in the second set of one or more options, performing a second operation (e.g., the operation shown in FIG. 6L) (e.g., enabling a spatial capture mode) corresponding to the second option, wherein the second operation is different from the first operation.

[0276] In some embodiments, performing the operation corresponding to a respective option of the second set of one or more options includes displaying a set of one or more adjustment options (e.g., 618g) associated with the respective option (e.g., as seen in FIG. 6E) (e.g., displaying one or more different selectable options such as a slider for setting a style, displaying one or more different selectable options for setting a low light capture mode, displaying one or more different selectable options for setting an exposure value, displaying one or more different selectable options for setting a timer duration that indicates how long after a capture affordance is selected the camera waits before capturing media, or displaying one or more different selectable options for selecting an aspect ratio). In some embodiments, displaying one or more selectable options includes displaying a slider or other adjustable control that can be adjusted between a plurality of different values (e.g., based on one or more inputs detected via the one or more input devices that are directed to the slider or other adjustable control) to change a behavior of the camera application when capturing media. In some embodiments, the displaying one or more selectable options includes displaying a plurality of options that can be individually selected (e.g., based on one or more inputs detected via the one or more input devices that are directed to the selectable options) to change a behavior of the camera application when capturing media. Displaying a set of one or more adjustment options associated with the respective option when the respective option is selected provides users with access to the adjustment options when requested, without cluttering the UI with additional displayed options when those options are not required.

[0277] In some embodiments, performing the operation corresponding to a respective option (e.g., 618b or 618c) of the second set of one or more options includes enabling and / or changing a capture mode for the one or more cameras (e.g., enabling or disabling a spatial capture mode, enabling or disabling a panorama capture mode, and / or enabling or disabling a simulated depth of field capture mode).

[0278] In some embodiments, the second set of one or more mode options includes options (e.g., 618b or 618c) (e.g., a spatial capture mode option) that change a camera capture 1001019401Attorney Docket No.: P71055W01 / 77770000-858501mode; and the second set of one or more mode options includes options (e.g., a filter option) that display a set of one or more adjustment options associated with the respective option (e.g., 618g or 6181). Including both an option to change a camera mode and an option to display a set of one or more adjustment options associated with the respective option in the second set of mode options provides users with access to those options when requested, without cluttering the UI with additional displayed options when those options are not required.

[0279] In some embodiments, the computer system displays, via the one or more display generation components, in the camera user interface, a media format control (e.g., 614g) (e.g., concurrently with the first set of one or more mode options, the capture affordance, the live preview, and / or the mode switcher option). While displaying the media format control, the computer system detects via the one or more input devices, an input (e.g., 612d) (e.g., a tap, an air gesture, or a button press while a respective option is selected / highlighted) directed to the media format control. In response to detecting the input directed to the media format control, the computer system displays, via the one or more display generation components, in the camera user interface (e.g., concurrently with the first set of one or more mode options, the capture affordance, the live preview, and / or the mode switcher option), a plurality of media format options (e.g., the options in 614p), including multiple options for changing captured media resolution (e.g., 12 megapixel, 24 megapixel, and / or 48 megapixel) and multiple options for changing file format (e.g., JPEG, HEIC, and / or RAW). Displaying a plurality of media format options in response to an input directed to a media format control provides users with access to options that include multiple resolution and file format options when requested, without cluttering the UI with additional displayed options when those options are not required.

[0280] In some embodiments, the plurality of media format options include multiple options for switching photo capture between still photo capture and capture of a photo with additional frames before and / or after the capture input that can be replayed in sequence (e.g., options in 614p3) (sometimes referred to as a “live photo”) (e.g., a live photo option with selectable affordances for switching between “automatic” where the device automatically decides whether or not to capture a live photo, “on” where the device automatically enabled to capture a live photo, and “off’ where the device is disabled from capturing a live photo).Attorney Docket No.: P71055W01 / 77770000-858501

[0281] In some embodiments, the plurality of media format options are displayed in a platter (e.g., 614p) that overlays at least a portion of the live preview. Displaying the plurality of media format options in a platter that overlays the live preview optimizes the display of the live preview of content by increasing and / or maximizing the size of the live preview of content, when the plurality of media format options are not displayed.

[0282] In some embodiments, while displaying the plurality of media format options: the computer system detects, via the one or more input devices, an input (e.g., 612y) (e.g., a tap, an air gesture, or a button press while a respective option is selected / highlighted) directed to a media format option (e.g., a file format (e.g., RAW or JPG) or a resolution (e.g., 12 megapixel or 24 megapixel) of the stored media) of the plurality of media format options; and in response to detecting the input directed to the media format option of the plurality of media format options, the computer system changes a capture format for capturing media with the one or more cameras based on the selected media format option (e.g., as shown in FIGS. 60 and 6P) (e.g., selecting a first media format if the input is directed to a first media format option affordance and selecting a second media format that is different from the first media format if the input is directed to a second media format option affordance that is different from the first media format option affordance). In some embodiments, some of the media format options are mutually exclusive (e.g., 12 megapixel, 24 megapixel, and / or 48 megapixel). In some embodiments, some of the media format options can be selected concurrently with other media format options (e.g., the user can select one resolution, one file format and one status for live photo concurrently).

[0283] In some embodiments, in conjunction with displaying the plurality of media format options, the computer system ceases to display one or more other controls (e.g., 614h) (e.g., a flash mode control for adjusting a flash setting of the camera such as a control for selecting between an automatic flash mode, a flash enabled mode and a flash disabled mode). Ceasing to display one or more other controls when displaying the plurality of media format options optimizes the use of screen real estate and reduces clutter in the user interface, which so enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating / interacting with the system) which, additionally, reduces power usage and improves battery life of the system by enabling the user to use the system more quickly and efficiently.Attorney Docket No.: P71055W01 / 77770000-858501

[0284] In some embodiments, while displaying the plurality of media format options with a first media format option (e.g., 614pla) (e.g., 48 megapixel resolution option) of the plurality of media format options enabled for selection, detecting, via the one or more input devices, an input (e.g., 612y) (e.g., a tap, an air gesture, or a button press while a respective option is selected / highlighted) directed to a second media format option (e.g., 614plb) (e.g., a JPEG format option) of the plurality of media format options. In response to detecting the input directed to the second media format option: the computer system changes a second capture format for capturing media with the one or more cameras based on the second media format option (e.g., enabling storage of captured photos in JPEG format), and disables the first media format option for selection (e.g., disables 614p2b) (e.g., making the first media format option non-selectable, such as disabling the ability to select the 48 MP resolution option such that selection of the option (e.g., tapping on the option) would not cause the corresponding operation to be performed). In some embodiments, the appearance of the first media format option is modified (e.g., greyed out, darkened, and / or blurred) to indicate that the first media format option is not available for selection. In some embodiments, the first media format option is disabled because it is incompatible with the selected second media format option (e.g., 48 MP photos are not compatible with JPEG format). Disabling a media format option for selection when changing a capture format prevents an incompatible option from being selected, which enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating / interacting with the system) which, additionally, reduces power usage and improves battery life of the system by enabling the user to use the system more quickly and efficiently. Doing so also provides improved visual feedback as to which options are compatible with the selected capture format.

[0285] In some embodiments, the media format control includes a single media format indicator (e.g., 614gl) that visually indicates the status (in some embodiments, a configuration) of a first media format parameter (e.g., captured media resolution) and the status of a second media format parameter (e.g., file format for captured media), different from the first media format parameter, the single media format indicator including: a first visual sub-element (e.g., “RAW” in 614gl) that indicates the status of the first media format parameter; and a second visual sub-element (e.g., “24” in 614gl) that indicates the status of the second media format parameter. In some embodiments, when the status of first media format parameter changes with the status of the second media format parameter changing, the103Attorney Docket No.: P71055W01 / 77770000-858501appearance of the first visual sub-element changes while the appearance of the second visual sub-elements remains the same, and vice versa. Displaying a single media format indicator that indicates the status of the first media format parameter and the second media format parameter optimizes the use of screen real estate and reduces clutter in the user interface.

[0286] In some embodiments, one or more of the platters and / or affordances (e.g., 614c, 618, and / or 614p) are displayed with a simulated glass material that has an appearance that is based on the live preview (e.g., the content currently in the live preview) and changes as content in the live preview changes, wherein the simulated glass material distorts an appearance of the content in the live preview that is seen through the simulated glass using a simulated optical effect (e.g., simulated blurring, simulated refraction, and / or simulated reflection).

[0287] In some embodiments, the computer system displays, via the one or more display generation components, in the camera user interface, a capture settings control (e.g., 614h) (e.g., concurrently with the first set of one or more mode options, the capture affordance, the live preview, and / or the mode switcher option) (in some embodiments, concurrently with, and separate from, the media format control). While displaying the capture settings control, the computer system detects, via the one or more input devices, an input (e.g., 612e) (e.g., a tap, an air gesture, or a button press while a respective control is selected / highlighted) directed to the capture settings control. In response to detecting the input directed to the capture settings control, the computer system displays, via the one or more display generation components, in the camera user interface (e.g., concurrently with the first set of one or more mode options, the capture affordance, the live preview, and / or the mode switcher option), a plurality of capture settings options (e.g., the options in 614q). In some embodiments, the plurality of capture settings options include a plurality of flash setting options, a plurality of low-light setting options, and / or a plurality of exposure control options (e.g., one or more of shutter speed, aperture, and ISO settings). Displaying a plurality of capture settings options in response to an input directed to a capture settings control provides users with access to options that include multiple resolution and file format options when requested, without cluttering the UI with additional displayed options when those options are not required.

[0288] In some embodiments, the plurality of capture settings options are displayed in a second platter that overlays at least a portion of the live preview. Displaying the plurality of capture settings options in a platter that overlays the live preview optimizes the display of the 1041019401Attorney Docket No.: P71055W01 / 77770000-858501live preview of content by increasing and / or maximizing the size of the live preview of content, when the plurality of media format options are not displayed.

[0289] In some embodiments, prior to detecting the input (e.g., 612e) directed to the capture settings control (e.g., 614h), the capture settings control is concurrently displayed with a respective media format control (e.g., 614g) that indicates the status of one or more selectable media format parameters, the method including: in response to detecting the input directed to the capture settings control, ceasing to display the respective media format control. In some embodiments, at least a portion of the plurality of capture settings options are displayed at a location at which the respective media format control was displayed. In some embodiments, while displaying the respect media format control, detecting via the one or more input devices, an input (e.g., a tap) directed to the respective media format control; and in response to detecting the input directed to the respective media format control, displaying, via the one or more display generation components, in the camera user interface (e.g., concurrently with the first set of one or more mode options, the capture affordance, the live preview, and / or the mode switcher option), a plurality of media format options, including multiple options for changing captured media resolution (e.g., 12 megapixel, 24 megapixel, and / or 48 megapixel) and multiple options for changing file format (e.g., JPEG, HEIC, and / or RAW). Ceasing to display the respective media format control when displaying the plurality of capture settings options optimizes the use of screen real estate and reduces clutter in the user interface, which so enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating / interacting with the system) which, additionally, reduces power usage and improves battery life of the system by enabling the user to use the system more quickly and efficiently.

[0290] In some embodiments, while displaying the plurality of capture settings options with a first capture setting option (e.g., low light mode option) of the plurality of capture settings options enabled for selection (e.g., 614q2a), the computer system detects, via the one or more input devices, an input (e.g., a tap, an air gesture, or a button press while a respective option is selected / highlighted) directed to a second capture setting option (e.g., 614qlb) (e.g., a flash on option) of the plurality of capture settings options. In response to detecting the input directed to the second capture setting option: the computer system changes a capture setting option for capturing media with the one or more cameras based on the second capture1051019401Attorney Docket No.: P71055W01 / 77770000-858501setting option (e.g., configuring the flash on during media capture); and the computer system disables the first capture setting option for selection (e.g., making the first capture setting option non-selectable, such as disabling the ability to select the low light mode option or such that selection of the option (e.g., tapping on the option) would not cause the corresponding operation to be performed). In some embodiments, the appearance of the first capture setting option is modified (e.g., greyed out, darkened, and / or blurred) to indicate that the first capture setting option is not available for selection. In some embodiments, the first capture setting option is disabled because it is incompatible with the selected second capture setting option (e.g., low light mode is incompatible with flash). Disabling a first media capture setting option for selection when changing a capture setting prevents an incompatible option from being selected, which enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating / interacting with the system) which, additionally, reduces power usage and improves battery life of the system by enabling the user to use the system more quickly and efficiently. Doing so also provides improved visual feedback as to which options are compatible with the selected setting option.

[0291] In some embodiments, the first set of one or more mode options for switching between photo capture mode and video capture mode are displayed in a first platter (e.g., 614i); and displaying the second set of mode options includes displaying the mode switcher option merging with the first platter to form a second platter that includes the second set of mode options (e.g., as shown in FIGS. 6C and 6D). In some embodiments, the second platter is larger than the first platter and occupies at least a portion of the space occupied by the first platter. In some embodiments, the computer system displays an animation of the mode switcher option progressively merging into the first platter. Displaying the mode switcher option merging with the first platter to form a second platter that includes the second set of mode options provides improved visual feedback that the second set of mode options include options that are compatible with the photo capture mode and video capture mode.

[0292] In some embodiments, the camera user interface includes a first expandable control (e.g., a mode switcher option (e.g., 614j), a media format control (e.g., 614g), or a capture settings control (e.g., 614h)) that has expanded and unexpanded states and a second expandable control option that has expanded and unexpanded states. In such embodiments, while the first expandable control (e.g., 618) is in the unexpanded state, detecting, via the one1061019401Attorney Docket No.: P71055W01 / 77770000-858501or more input devices, an input (e.g., 614z) (e.g., a tap, an air gesture, or a button press while control is selected / highlighted) corresponding to a request to expand the first expandable control. In response to detecting the input corresponding to the request to expand the first expandable control: expanding the first expandable control to the expanded state (e.g., 618); and in accordance with a determination that the second expandable control is in the expanded state, collapsing the second expandable control (614p) to the unexpanded state. In some embodiments, response to the input and in accordance with a determination that the second expandable control is in the unexpanded state, maintaining the second expandable control in its unexpanded state. Collapsing another expanded control when expanding a different expandable control optimizes the use of screen real estate and reduces clutter in the user interface.

[0293] Note that details of the processes described above with respect to method 700 (e.g., FIG. 7) are also applicable in an analogous manner to the methods described below / above. For example, method 700 optionally includes one or more of the characteristics of the various methods described above with reference to methods 800, 1000, 1200, 1400, 1500, 1600 and / or 1800. For example, the first set of one or more mode options of method 700 can be used to switch the type of media captured in response to a capture request, while maintaining a respective value of a camera setting, in accordance with method 800. For brevity, these details are not repeated below.

[0294] FIG. 8 is a flow diagram illustrating a method for maintaining certain camera settings when switching between camera modes using a computer system in accordance with some embodiments. Method 800 is performed at a computer system (e.g., 100, 300, 500, and / or 600) that is in communication with one or more display generation components (e.g., 602) (e.g., a display controller; a touch-sensitive display system; a display (e.g., integrated and / or connected), a 3D display, a transparent display, a projector, and / or a heads-up display), and one or more cameras (e.g., forward facing camera 606, rear facing cameras 606 A, 606B, and / or 606C, and / or externally-connected cameras, and / or a plurality of cameras with different lenses (e.g., different fixed focal lengths), such as a standard camera, a telephoto camera, a wide-angle camera, and / or a macro camera). Some operations in method 800 are, optionally, combined, the orders of some operations are, optionally, changed, and some operations are, optionally, omitted.1071019401Attorney Docket No.: P71055W01 / 77770000-858501

[0295] As described below, method 800 provides an intuitive way for maintaining certain camera settings when switching between camera modes. The method reduces the cognitive burden on a user for maintaining certain camera settings when switching between camera modes, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to maintain certain camera settings when switching between camera modes faster and more efficiently conserves power and increases the time between battery charges.

[0296] While displaying a camera user interface (e.g., 614) and while the computer system (e.g., 600) is configured to capture a first type of media (e.g., photo media and / or video media) in response to a capture request input (e.g., 612h) (e.g., a tap on a shutter button, an predetermined air gesture, an input on a button) using a respective value of a plurality of available values for a first camera setting (e.g., the setting corresponding to 614f or 618f), the computer system detects (802), via the one or more input devices, a media-type input (e.g., 612j or 612v) corresponding to a request to switch a type of media that will be captured in response to the capture request input. In some embodiments, the media-type input is an input corresponding to a camera mode selection affordance (e.g., 612j). In some embodiments, the available values are from a limited set of discrete values (e.g., on or off) or a continuous range of values, such as a range of zoom values ranging from IX to 20X).

[0297] In response to detecting the media-type input (804): in accordance with a determination that the respective value for the first camera setting (e.g., a depth mode setting, that when selected, causes media to be captured with depth information that is later used to modify how the media is displayed (e.g., with simulated depth effects)) is a first value (e.g., exposure of +1.0 as shown in FIG. 61) (e.g., enabled for the first type of media), configuring (e.g., 806) the computer system to capture a second type of media (e.g., configuring to capture video when a photo media was previously selected or vice versa), different from the first type of media, with the first value for the first camera setting (e.g., the first camera setting is a persistent setting that is applicable to both the first and second types of media); and in accordance with a determination that the respective value for the first camera setting is a second value, different from the first value for the first camera setting, configuring (e.g., 808) the computer system to capture the second type of media, with the second value for the first camera. Maintaining a respective value for a first camera setting that was used to capture a first type of media when configuring the computer system to capture a second type of media1081019401Attorney Docket No.: P71055W01 / 77770000-858501reduces the number of inputs needed to enable use of the respective value for the first camera setting with the second type of media. Doing so also automatically configures the second type of media to be captured using the respective value for the first camera setting, which performs an operation when the computer system is re-configured, without requiring further input.

[0298] In some embodiments, the media-type input is detected while the computer system is configured to capture the first type of in response to a capture request input (e.g., a tap on a shutter button, an predetermined air gesture, an input on a button) using a respective value of a plurality of available values for a second camera setting (e.g., a zoom setting corresponding to 614c) (a spatial media capture setting, a zoom level setting, a camera selection setting), different from the first camera setting. In some embodiments, the first camera setting and the second camera setting are independently selected and mutually compatible such that the computer system can be configured to capture media with both settings at any respective value. In response to detecting the media-type input: in accordance with a determination that the respective value for the second camera setting is a first value (e.g., a zoom of 1.5X) (e.g., enabled for the first type of media) for the second camera setting, configuring the computer system to capture the second type of media (e.g., configuring to capture video when a photo media was previously selected or vice versa), different from the first type of media, with the first value for the second camera setting (e.g., the second camera setting is a persistent setting that is applicable to both the first and second types of media); and in accordance with a determination that the respective value for the first camera setting is a second value (e.g., a zoom of 2. OX) for the second camera setting, different from the first value for the second camera setting, configuring the computer system to captu...

Claims

Attorney Docket No.: P71055W01 / 77770000-858501CLAIMSWhat is claimed is:

1. A method, comprising:at a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras:displaying, via the one or more display generation components, a camera user interface that includes concurrently displaying:a live preview of content from the one or more cameras; and a camera mode selection affordance that includes a plurality of options including concurrently displaying:a first set of one or more mode options for switching between photo capture mode and video capture mode; anda mode switcher option for selecting additional modes for the camera user interface;while displaying the camera user interface, detecting, via the one or more input devices, a selection input directed to the camera user interface; andin response to detecting the selection input:in accordance with a determination that the selection input is directed to the mode switcher option, displaying a second set of mode options that correspond to different modes; andin accordance with a determination that the selection input is directed to the first set of one or more mode options, switching the camera user interface between the photo mode and the video capture mode.

2. The method of claim 1 , wherein;the camera user interface includes a capture affordance that is concurrently displayed with the first set of one or more options and the mode switcher option; andthe method includes, in response to detecting the selection input, in accordance with a determination that the selection input is directed to the capture affordance, initiating capture of media with the one or more cameras in accordance with one or more selected camera modes.2291019401Attorney Docket No.: P71055W01 / 77770000-8585013. The method of any one of claims 1-2, wherein:the camera user interface includes one or more action affordances that are concurrently displayed with the first set of one or more options and the mode switcher option; andthe method includes, in response to detecting the selection input, in accordance with a determination that the selection input is directed to the mode switcher option, shifting the one or more action affordances in the camera user interface.

4. The method of claim 3, wherein the one or more action affordances include one or more of:an affordance that, when selected based on an input detected by the one or more input devices, causes the computer system to display a camera roll;an affordance that, when selected based on an input detected by the one or more input devices, causes the computer system to capture media with the one or more cameras;an affordance that, when selected based on an input detected by the one or more input devices, causes the computer system to switch which camera is being used to capture media; andan affordance that, when selected based on an input detected by the one or more input devices, causes the computer system to change a zoom level that is used to capture media with the one or more cameras.

5. The method of any one of claims 3-4, the method including:in response to detecting the selection input, in accordance with a determination that the selection input is directed to the mode switcher option, displaying the second set of mode options that correspond to different camera modes in a region of the camera user interface that was previously occupied by the one or more action affordances.

6. The method of any one of claims 1-5, the method including:in response to detecting the selection input, in accordance with a determination that the selection input is directed to the mode switcher option, maintaining display of the first set of one or more mode options.2301019401Attorney Docket No.: P71055W01 / 77770000-8585017. The method of claim 6, wherein maintaining display of the first set of one or more mode options includes displaying a second set of one or more mode options that includes one or more mode options that are not included in the first set of one or more mode options.

8. The method of any one of claims 1-7, the method including:in response to detecting the selection input, in accordance with a determination that the selection input is directed to the first set of one or more mode options, maintaining display of the mode switcher option.

9. The method of any one of claims 1-8, wherein the second set of one or more mode options includes a mode option selected from the set consisting of: photographic styles, filters, aspect ratio, exposure, spatial capture, timer, and panorama.

10. The method of any one of claims 1-9, wherein the second set of one or more mode options includes one or more mode options that are compatible with both photo capture and video capture.

11. The method of any one of claims 1-10, wherein:the camera user interface includes a camera switching affordance that is concurrently displayed with the first set of one or more options and the mode switcher option; and the method includes, in response to detecting the selection input, in accordance with a determination that the selection input is directed to the camera switching affordance, switching which camera is being used to capture media for the camera user interface.

12. The method of any one of claims 1-11, wherein:the camera user interface includes a zoom affordance that is concurrently displayed with the first set of one or more options and the mode switcher option; andthe method includes, in response to detecting the selection input, in accordance with a determination that the selection input is directed to the zoom affordance, changing a zoom level for capturing media with the one or more cameras.

13. The method of claim 12, including:detecting, via the one or more input devices, a gesture that includes movement directed to the zoom affordance; and2311019401Attorney Docket No.: P71055W01 / 77770000-858501in response to detecting the gesture, changing a zoom level for capturing media with the one or more cameras in a direction that is based on a direction of the movement.

14. The method of anyone of claims 12-13, including:detecting, via the one or more input devices, a gesture that includes movement directed to the zoom affordance; andin response to detecting the gesture, changing a zoom level for capturing media with the one or more cameras by an amount that is based on a magnitude of the movement.

15. The method of any one of claims 1-14, including:while displaying the second set of one or more mode options, detecting, via the one or more input devices, an input directed to the second set of one or more options; andin response to detecting the input directed to the second set of one or more options, navigating through the second set of one or more options.

16. The method of any one of claims 1-15, including:while displaying the second set of one or more mode options, detecting, via the one or more input devices, a second input directed to the second set of one or more options; and in response to detecting the second input directed to the second set of one or more options, performing an operation corresponding to a respective option of the second set of one or more options.

17. The method of claim 16, wherein performing the operation corresponding to a respective option of the second set of one or more options includes:in accordance with a determination that the input is directed to a first option in the second set of one or more options, performing a first operation corresponding to the first option; andin accordance with a determination that the input is directed to a second option in the second set of one or more options, performing a second operation corresponding to the second option, wherein the second operation is different from the first operation.

18. The method of any one of claims 16-17, wherein performing the operation corresponding to a respective option of the second set of one or more options includes displaying a set of one or more adjustment options associated with the respective option.2321019401Attorney Docket No.: P71055W01 / 77770000-85850119. The method of any one of claims 16-18, wherein performing the operation corresponding to a respective option of the second set of one or more options includes enabling and / or changing a capture mode for the one or more cameras.

20. The method of any one of claims 16-19, wherein:the second set of one or more mode options includes options that change a camera capture mode; andthe second set of one or more mode options includes options that display a set of one or more adjustment options associated with the respective option.

21. The method of any one of claims 1-20, comprising:displaying, via the one or more display generation components, in the camera user interface, a media format control; andwhile displaying the media format control, detecting via the one or more input devices, an input directed to the media format control; andin response to detecting the input directed to the media format control, displaying, via the one or more display generation components, in the camera user interface, a plurality of media format options, including multiple options for changing captured media resolution and multiple options for changing file format.

22. The method of claim 21, wherein the plurality of media format options includes multiple options for switching photo capture between still photo capture and capture of a photo with additional frames before and / or after the capture input that can be replayed in sequence.

23. The method of any one of claims 21-22, wherein the plurality of media format options is displayed in a platter that overlays at least a portion of the live preview.

24. The method of any one of claims 21-23, the method including:while displaying the plurality of media format options:detecting, via the one or more input devices, an input directed to a media format option of the plurality of media format options; and2331019401Attorney Docket No.: P71055W01 / 77770000-858501in response to detecting the input directed to the media format option of the plurality of media format options, changing a capture format for capturing media with the one or more cameras based on the selected media format option.

25. The method of any one of claims 21-24, including:in conjunction with displaying the plurality of media format options, ceasing to display one or more other controls.

26. The method any one of claims 21-25, including:while displaying the plurality of media format options with a first media format option of the plurality of media format options enabled for selection, detecting, via the one or more input devices, an input directed to a second media format option of the plurality of media format options;in response to detecting the input directed to the second media format option:changing a second capture format for capturing media with the one or more cameras based on the second media format option; anddisabling the first media format option for selection.

27. The method of any one of claims 21-26, wherein the media format control includes a single media format indicator that visually indicates the status of a first media format parameter and the status of a second media format parameter, different from the first media format parameter, the single media format indicator including:a first visual sub-element that indicates the status of the first media format parameter; anda second visual sub-element that indicates the status of the second media format parameter.

28. The method of any one of claims 1-27, wherein one or more of the platters and / or affordances are displayed with a simulated glass material that has an appearance that is based on the live preview and changes as content in the live preview changes, wherein the simulated glass material distorts an appearance of the content in the live preview that is seen through the simulated glass using a simulated optical effect.2341019401Attorney Docket No.: P71055W01 / 77770000-85850129. The method of any one of claims 1-28, comprising:displaying, via the one or more display generation components, in the camera user interface, a capture settings control; andwhile displaying the capture settings control, detecting via the one or more input devices, an input directed to the capture settings control; andin response to detecting the input directed to the capture settings control, displaying, via the one or more display generation components, in the camera user interface, a plurality of capture settings options.

30. The method of claim 29, wherein the plurality of capture settings options is displayed in a second platter that overlays at least a portion of the live preview.

31. The method of any one of claims 29-30, wherein, prior to detecting the input directed to the capture settings control, the capture settings control is concurrently displayed with a respective media format control that indicates the status of one or more selectable media format parameters, the method including:in response to detecting the input directed to the capture settings control, ceasing to display the respective media format control.

32. The method any one of claims 29-31, including:while displaying the plurality of capture settings options with a first capture setting option of the plurality of capture settings options enabled for selection, detecting, via the one or more input devices, an input directed to a second capture setting option of the plurality of capture settings options;in response to detecting the input directed to the second capture setting option:changing a capture setting option for capturing media with the one or more cameras based on the second capture setting option; anddisabling the first capture setting option for selection.

33. The method of any one of claims 1-32, wherein:the first set of one or more mode options for switching between photo capture mode and video capture mode are displayed in a first platter; and2351019401Attorney Docket No.: P71055W01 / 77770000-858501displaying the second set of mode options includes displaying the mode switcher option merging with the first platter to form a second platter that includes the second set of mode options.

34. The method of any one of claims 1-33, wherein the camera user interface includes a first expandable control that has expanded and unexpanded states and a second expandable control option that has expanded and unexpanded states, the method including:while the first expandable control is in the unexpanded state, detecting, via the one or more input devices, an input corresponding to a request to expand the first expandable control; andin response to detecting the input corresponding to the request to expand the first expandable control:expanding the first expandable control to the expanded state; and in accordance with a determination that the second expandable control is in the expanded state, collapsing the second expandable control to the unexpanded state.

35. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 1-34.

36. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, the computer system comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any of claims 1-34.

37. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:means for performing the method of any of claims 1-34.2361019401Attorney Docket No.: P71055W01 / 77770000-85850138. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 1-34.

39. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for:displaying, via the one or more display generation components, a camera user interface that includes concurrently displaying:a live preview of content from the one or more cameras; anda camera mode selection affordance that includes a plurality of options including concurrently displaying:a first set of one or more mode options for switching between photo capture mode and video capture mode; anda mode switcher option for selecting additional modes for the camera user interface;while displaying the camera user interface, detecting, via the one or more input devices, a selection input directed to the camera user interface; andin response to detecting the selection input:in accordance with a determination that the selection input is directed to the mode switcher option, displaying a second set of mode options that correspond to different modes; andin accordance with a determination that the selection input is directed to the first set of one or more mode options, switching the camera user interface between the photo mode and the video capture mode.

40. A computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:2371019401Attorney Docket No.: P71055W01 / 77770000-858501displaying, via the one or more display generation components, a camera user interface that includes concurrently displaying:a live preview of content from the one or more cameras; and a camera mode selection affordance that includes a plurality of options including concurrently displaying:a first set of one or more mode options for switching between photo capture mode and video capture mode; anda mode switcher option for selecting additional modes for the camera user interface;while displaying the camera user interface, detecting, via the one or more input devices, a selection input directed to the camera user interface; andin response to detecting the selection input:in accordance with a determination that the selection input is directed to the mode switcher option, displaying a second set of mode options that correspond to different modes; andin accordance with a determination that the selection input is directed to the first set of one or more mode options, switching the camera user interface between the photo mode and the video capture mode.

41. A computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:means for displaying, via the one or more display generation components, a camera user interface that includes concurrently displaying:a live preview of content from the one or more cameras; anda camera mode selection affordance that includes a plurality of options including concurrently displaying:a first set of one or more mode options for switching between photo capture mode and video capture mode; anda mode switcher option for selecting additional modes for the camera user interface;means for, while displaying the camera user interface, detecting, via the one or more input devices, a selection input directed to the camera user interface; andmeans for, in response to detecting the selection input:2381019401Attorney Docket No.: P71055W01 / 77770000-858501in accordance with a determination that the selection input is directed to the mode switcher option, displaying a second set of mode options that correspond to different modes; andin accordance with a determination that the selection input is directed to the first set of one or more mode options, switching the camera user interface between the photo mode and the video capture mode.

42. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for:displaying, via the one or more display generation components, a camera user interface that includes concurrently displaying:a live preview of content from the one or more cameras; anda camera mode selection affordance that includes a plurality of options including concurrently displaying:a first set of one or more mode options for switching between photo capture mode and video capture mode; anda mode switcher option for selecting additional modes for the camera user interface;while displaying the camera user interface, detecting, via the one or more input devices, a selection input directed to the camera user interface; andin response to detecting the selection input:in accordance with a determination that the selection input is directed to the mode switcher option, displaying a second set of mode options that correspond to different modes; andin accordance with a determination that the selection input is directed to the first set of one or more mode options, switching the camera user interface between the photo mode and the video capture mode.

43. A method comprising:at a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras:2391019401Attorney Docket No.: P71055W01 / 77770000-858501while displaying a camera user interface and while the computer system is configured to capture a first type of media in response to a capture request input using a respective value of a plurality of available values for a first camera setting, detecting, via the one or more input devices, a media-type input corresponding to a request to switch a type of media that will be captured in response to the capture request input;in response to detecting the media-type input:in accordance with a determination that the respective value for the first camera setting is a first value, configuring the computer system to capture a second type of media, different from the first type of media, with the first value for the first camera setting; andin accordance with a determination that the respective value for the first camera setting is a second value, different from the first value for the first camera setting, configuring the computer system to capture the second type of media, with the second value for the first camera.

44. The method of claim 43, wherein the media-type input is detected while the computer system is configured to capture the first type of in response to a capture request input using a respective value of a plurality of available values for a second camera setting, different from the first camera setting, the method comprising:in response to detecting the media-type input:in accordance with a determination that the respective value for the second camera setting is a first value for the second camera setting, configuring the computer system to capture the second type of media, different from the first type of media, with the first value for the second camera setting; andin accordance with a determination that the respective value for the first camera setting is a second value for the second camera setting, different from the first value for the second camera setting, configuring the computer system to capture the second type of media, with the second value for the second camera.

45. The method of any one of claims 43-44, wherein:the camera user interface includes a first set of one or more mode options for switching between a mode for capturing the first type of media and a mode for capturing the second type of media; andthe media-type input is directed to the first set of one or more mode options.2401019401Attorney Docket No.: P71055W01 / 77770000-85850146. The method of any one of claims 43-44, wherein:the camera user interface includes a live preview of content from the one or more cameras; andthe media-type input is directed to a portion of the live preview of content.

47. The method of any one of claims 43-46, wherein the first type of media is photo media or video media.

48. The method of any one of claims 43-47, wherein the first camera setting is a depth capture mode setting.

49. The method of any one of claims 43-47, wherein the first camera setting is a zoom level setting.

50. The method of any one of claims 43-47, wherein the first camera setting is an exposure compensation setting.

51. The method of any one of claims 43-47, wherein the first camera setting is a flash setting.

52. The method of any one of claims 43-51, wherein the camera user interface includes a mode switcher option for selecting additional modes, the method comprising:detecting a first user input directed to the mode switcher option; andin response to detecting the first user input, displaying a first set of mode options that correspond to different modes and that includes at least a first adjustment option for adjusting a third camera setting.

53. The method of claim 52, including:while displaying the first set of one or more mode options, detecting, via the one or more input devices, a second input; andin response to detecting the second input:2411019401Attorney Docket No.: P71055W01 / 77770000-858501in accordance with a determination that the second user input corresponds to a respective option of the first set of one or more options, adjusting a respective value of a respective camera setting that corresponds to the respective option; andin accordance with a determination that the second user input corresponds to a first portion of the camera user interface ceasing to display the first set of one or more mode options.

54. The method of any one of claims 52-53, including:while displaying the second set of one or more mode options, detecting, via the one or more input devices, an input directed to the first set of one or more options; andin response to detecting the input directed to the first set of one or more options, navigating through the first set of one or more options.

55. The method of any one of claims 43-54, wherein displaying the camera user interface includes concurrently displaying:a control for changing the first camera setting; anda second set of one or more mode options for switching between a mode for capturing the first type of media and a mode for capturing the second type of media;wherein the method further comprises:detecting a respective user input; andin response to detecting the respective input:in accordance with a determination that the respective input is directed to the control for changing the first camera setting, changing the respective value for the first camera setting; andin accordance with a determination that the respective input is directed to the second set of one or more mode options, switching the camera user interface between being configured to capture the first type of media and being configured to capture second type of media in response to a capture request input.

56. The method of claim 55, wherein the control for changing the first camera setting is displayed in the camera user interface prior to displaying a third set of mode options that correspond to different modes in the camera user interface2421019401Attorney Docket No.: P71055W01 / 77770000-85850157. The method of claim 55, wherein:the camera user interface includes a second mode switcher option for selecting additional modes; andthe control for changing the first camera setting is displayed in response to an input directed to the second mode switcher option.

58. The method of any one of claims 43-57, comprising:while displaying the camera user interface and while the computer system is configured to capture the first type of media or the second type of media in response to a capture request input, detecting, via the one or more input devices, an input corresponding to a request to switch to a first camera mode; andin response to detecting the input corresponding to the request to switch to the first camera mode:switching to the first camera mode; andupdating the camera user interface to indicate that the first camera mode is not compatible with at least one of the first type of media and the second type of media.

59. The method of claim 58, wherein updating the camera user interface to indicate that the first camera mode is not compatible with at least one of the first type of media and the second type of media includes ceasing to display, in the camera user interface, a second set of one or more mode options for switching between a mode for capturing the first type of media and a mode for capturing the second type of media.

60. The method of any one of claims 58-59, wherein switching to the first camera mode includes displaying a control that, when selected, causes the computer system to exit the first camera mode.

61. The method of any one of claims 43-60, wherein the first camera mode is a mode for capturing panoramic media in response to a capture request input.

62. The method of any one of claims 43-61, further comprising:while the respective value of the plurality of available values for the first camera setting is a default value, detecting, via the one or more input devices, a first set of one or2431019401Attorney Docket No.: P71055W01 / 77770000-858501more inputs corresponding to a request to change the first camera setting to a non-default value; andin response to detecting the first set of one or more inputs:changing the first camera setting to the requested non-default value; and displaying, via the one or more display generation components, in a first region, first information corresponding to the first camera setting.

63. The method of claim 62, further comprising:while a respective value of a plurality of available values for a respective camera setting, different from the first camera setting, is a default value, detecting, via the one or more input devices, a second set of one or more inputs corresponding to a request to change the respective camera setting to a non-default value; andin response to detecting the second set of one or more inputs:changing the respective camera setting to the requested non-default value; and displaying, via the one or more display generation components, in the first region, second information corresponding to the respective camera setting.

64. The method of any one of claims 62-63, wherein:in accordance with a determination that a first plurality of camera settings that includes the first camera setting are at their respective default values, the camera user interface is displayed without information in the first region that indicates a respective value of a camera setting of the first plurality of camera settings.

65. The method of any one of claims 62-64, further comprising:while the camera user interface is not displayed, displaying, via the one or more display generation components, in the first region, system status information.

66. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 43-65.2441019401Attorney Docket No.: P71055W01 / 77770000-85850167. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, the computer system comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any of claims 43-65.

68. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:means for performing the method of any of claims 43-65.

69. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 43-65.

70. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for:while displaying a camera user interface and while the computer system is configured to capture a first type of media in response to a capture request input using a respective value of a plurality of available values for a first camera setting, detecting, via the one or more input devices, a media-type input corresponding to a request to switch a type of media that will be captured in response to the capture request input;in response to detecting the media-type input:in accordance with a determination that the respective value for the first camera setting is a first value, configuring the computer system to capture a second type of media, different from the first type of media, with the first value for the first camera setting; andin accordance with a determination that the respective value for the first camera setting is a second value, different from the first value for the first camera setting,2451019401Attorney Docket No.: P71055W01 / 77770000-858501configuring the computer system to capture the second type of media, with the second value for the first camera.

71. A computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:while displaying a camera user interface and while the computer system is configured to capture a first type of media in response to a capture request input using a respective value of a plurality of available values for a first camera setting, detecting, via the one or more input devices, a media-type input corresponding to a request to switch a type of media that will be captured in response to the capture request input;in response to detecting the media-type input:in accordance with a determination that the respective value for the first camera setting is a first value, configuring the computer system to capture a second type of media, different from the first type of media, with the first value for the first camera setting; andin accordance with a determination that the respective value for the first camera setting is a second value, different from the first value for the first camera setting, configuring the computer system to capture the second type of media, with the second value for the first camera.

72. A computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:means for, while displaying a camera user interface and while the computer system is configured to capture a first type of media in response to a capture request input using a respective value of a plurality of available values for a first camera setting, detecting, via the one or more input devices, a media-type input corresponding to a request to switch a type of media that will be captured in response to the capture request input;means for, in response to detecting the media-type input:in accordance with a determination that the respective value for the first camera setting is a first value, configuring the computer system to capture a second type of2461019401Attorney Docket No.: P71055W01 / 77770000-858501media, different from the first type of media, with the first value for the first camera setting; andin accordance with a determination that the respective value for the first camera setting is a second value, different from the first value for the first camera setting, configuring the computer system to capture the second type of media, with the second value for the first camera.

73. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for:while displaying a camera user interface and while the computer system is configured to capture a first type of media in response to a capture request input using a respective value of a plurality of available values for a first camera setting, detecting, via the one or more input devices, a media-type input corresponding to a request to switch a type of media that will be captured in response to the capture request input;in response to detecting the media-type input:in accordance with a determination that the respective value for the first camera setting is a first value, configuring the computer system to capture a second type of media, different from the first type of media, with the first value for the first camera setting; andin accordance with a determination that the respective value for the first camera setting is a second value, different from the first value for the first camera setting, configuring the computer system to capture the second type of media, with the second value for the first camera.

74. A method, comprising:at a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras:while displaying, via the one or more display generation components, a camera user interface and before media capture has started based on a user input requesting media capture:detecting a change in a number of subjects that are available to be captured via the one or more cameras; and2471019401Attorney Docket No.: P71055W01 / 77770000-858501in response to detecting the change in the number of subjects that are available to be captured via the one or more cameras, changing a zoom level for capturing media with the one or more cameras.

75. The method of claim 74, wherein the camera user interface concurrently includes: an automatic zoom mode user interface object that, when enabled, causes the computer system to automatically switch between different zoom levels for capturing media with the one or more cameras when corresponding conditions are met; anda manual zoom mode user interface object that, when selected, changes between different zoom levels for capturing media with the one or more cameras based on user input.

76. The method of claim 75, further comprising:while automatic zoom mode is enabled for capturing media with the one or more cameras, detecting, via the one or more input devices, a sequence of one or more inputs directed to the manual zoom mode user interface object; andin response to detecting the sequence of one or more inputs directed to the manual zoom mode user interface object:disabling an automatic zoom mode for capturing media with the one or more cameras, wherein the computer system, when in the automatic zoom mode, automatically changes the zoom level for capturing media with the one or more cameras of the computer system when a change in in a number of subjects that are available to be captured via the one or more cameras is detected; andchanging a zoom level for capturing media with the one or more of the cameras of the computer system.

77. The method of any one of claims 75-76, further comprising:detecting, via the one or more input devices, a sequence of one or more inputs directed to the automatic zoom mode user interface object; andin response to detecting the sequence of one or more inputs directed to the automatic zoom mode user interface object, disabling an automatic zoom mode without changing a zoom level for capturing media with the one or more cameras of the computer system, wherein the computer system, when in the automatic zoom mode, automatically changes the zoom level for capturing media with the one or more cameras when a change in in a number of subjects that are available to be captured via the one or more cameras is detected.2481019401Attorney Docket No.: P71055W01 / 77770000-85850178. The method of any one of claims 75-77, wherein:in accordance with a determination that an automatic zoom mode is enabled, the automatic zoom mode user interface object is displayed with a first visual appearance, wherein the computer system, when in the automatic zoom mode, automatically changes the zoom level for capturing media with the one or more cameras when a change in in a number of subjects that are available to be captured via the one or more cameras is detected; and in accordance with a determination that the automatic zoom mode is not enabled, the automatic zoom mode user interface object is displayed with a second visual appearance, different from the first visual appearance.

79. The method of any one of claims 74-78, wherein changing the zoom level for capturing media with the one or more cameras includes:in accordance with a determination that the change in the number of subjects that are available to be captured via the one or more cameras includes a first type of change in the number of subjects, changing the zoom level for capturing media with the one or more cameras to a first zoom level; andin accordance with a determination that the change in the number of subjects that are available to be captured via the one or more cameras includes a second type of change in the number of subjects, changing the zoom level for capturing media with the one or more cameras to a second zoom level, that is different from the first zoom level.

80. The method of any one of claims 74-79, wherein:the change in the number of subjects that are available to be captured via the one or more cameras is an increase in the number of subjects that are available to be captured via the one or more cameras; andchanging the zoom level for capturing media with the one or more cameras includes decreasing the zoom level.

81. The method of any one of claims 74-79, wherein:the change in the number of subjects that are available to be captured via the one or more cameras is a decrease in the number of subjects that are available to be captured via the one or more cameras; and2491019401Attorney Docket No.: P71055W01 / 77770000-858501changing the zoom level for capturing media with the one or more cameras includes increasing the zoom level.

82. The method of any one of claims 74-81, further comprising:while an automatic zoom mode is enabled, wherein the computer system, when in the automatic zoom mode, automatically changes the zoom level for capturing media with the one or more cameras when a change in in a number of subjects that are available to be captured via the one or more cameras is detected, detecting, via the one or more input devices, a sequence of one or more inputs that corresponds to a request to disable the automatic zoom mode; andin response to detecting the sequence of one or more inputs that corresponds to the request to disable the automatic zoom mode, disabling the automatic zoom mode;while the automatic zoom mode is disabled, detecting a second change in a number of subjects that are available to be captured via the one or more cameras; andin response detecting the second change in the number of subjects that are available to be captured via the one or more cameras, maintaining the current zoom level for capturing media with the one or more cameras.

83. The method of claim 82, wherein the camera user interface includes a respective manual zoom mode user interface object, the method further comprising:detecting, via the one or more input devices, a sequence of one or more inputs directed to the respective manual zoom mode user interface object; andin response to detecting the sequence of one or more inputs directed to the respective manual zoom mode user interface object, changing a zoom level for capturing media with the one or more cameras.

84. The method of any one of claims 74-83, wherein changing the zoom level for capturing media with the one or more cameras includes displaying, via the one or more display generation components, an indication of a current zoom level.

85. The method of claim 84, wherein the indication of the current zoom level is a user-selectable interface object and the method further includes:2501019401Attorney Docket No.: P71055W01 / 77770000-858501detecting, via the one or more input devices, a sequence one or more user inputs that includes an input directed to the indication of the current zoom level; andin response to detecting the sequence of one or more user inputs that includes the input directed to the indication of the current zoom level, further changing the zoom level for capturing media with the one or more cameras.

86. The method of any one of claims 74-85, wherein the subjects that are available to be captured via the one or more cameras does not include one or more detected individuals that meet non-subject criteria, the method further comprising:while an automatic zoom mode is enabled and while a respective zoom level is set for capturing media with the one or more cameras, wherein the computer system, when in the automatic zoom mode, automatically changes the zoom level for capturing media with the one or more cameras when a change in in a number of subjects that are available to be captured via the one or more cameras is detected, detecting a change in the number of detected individuals that meet non-subject criteria; andin response to detecting the change in the number of individuals that meet non-subject criteria, maintaining the respective zoom level for capturing media with the one or more cameras.

87. The method of any one of claims 74-86, further comprising:while the one or more cameras is configured to capture media with a first aspect ratio and while the computer system is in a first orientation, detecting a third change in a number of subjects that are available to be captured via the one or more cameras while the computer system remains in the first orientation; andin response to detecting the third change in the number of subjects that are available to be captured via the one or more cameras, changing the aspect ratio with which the one or more cameras are configured to capture media from the first aspect ratio to a second aspect ratio, different from the first aspect ratio.

88. The method of any one of claims 74-87, wherein the camera user interface includes an aspect ratio user interface object, the method further comprising:while the computer system is in a first orientation:detecting an input corresponding to the aspect ratio user interface object; and2511019401Attorney Docket No.: P71055W01 / 77770000-858501in response to detecting the input corresponding to the aspect ratio user interface object, changing an aspect ratio with which the one or more cameras are configured to capture media.

89. The method of claim 88, wherein the camera user interface includes a live preview of content from the one or more cameras, the method further comprising:in response to detecting the input corresponding to the aspect ratio user interface object, updating the live preview of content, wherein the updated live preview of content includes a preview of content that is not within the field-of-view of the one or more cameras.

90. The method of any one of claims 88-89, wherein the aspect ratio user interface object, when selected via one or more successive inputs, causes the aspect ratio with which the one or more cameras capture media to cycle between a predetermined set of aspect ratios.

91. The method of any one of claims 88-90, wherein changing an aspect ratio with which the one or more cameras are configured to capture media includes:in accordance with a determination that a number of subjects that are available to be captured via the one or more cameras is a first number of subjects, changing an aspect ratio with which the one or more cameras are configured to capture media to a first changed aspect ratio; andin accordance with a determination that a number of subjects that are available to be captured via the one or more cameras is a second number of subjects, changing the aspect ratio with which the one or more cameras are configured to capture media to a second changed aspect ratio, different from the first changed aspect ratio.

92. The method of any one of claims 88-91, further comprising:while displaying the camera user interface without the aspect ratio user interface object, detecting that a set of aspect-ratio-user-interface-object-display criteria are met; and in response to detecting that the set of aspect-ratio-user-interface-obj ect-display criteria are met, displaying, in the camera user interface, the aspect ratio user interface object, wherein the set of aspect-ratio-user-interface-object display criteria are met based at least on data from the one or more cameras.2521019401Attorney Docket No.: P71055W01 / 77770000-85850193. The method of any one of claims 74-92, further comprising:in response to detecting the change in the number of subjects that are available to be captured via the one or more cameras, changing a framing with which the one or more cameras capture media.

94. The method of any one of claims 74-93, wherein changing the zoom level for capturing media with the one or more cameras occurs prior to detecting a request to capture media that is based on a user input requesting media capture while the camera user interface is displayed.

95. The method of any one of claims 74-94, wherein detecting the change in the number of subjects that are available to be captured via the one or more cameras is based, at least in part, on data that is detected outside of a field-of-view that is currently being displayed in a respective live preview of content from the one or more cameras that is currently being displayed in the camera user interface.

96. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 74-95.

97. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, the computer system comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any of claims 74-95.

98. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:means for performing the method of any of claims 74-95.2531019401Attorney Docket No.: P71055W01 / 77770000-85850199. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 74-95.

100. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for:while displaying, via the one or more display generation components, a camera user interface and before media capture has started based on a user input requesting media capture:detecting a change in a number of subjects that are available to be captured via the one or more cameras; andin response to detecting the change in the number of subjects that are available to be captured via the one or more cameras, changing a zoom level for capturing media with the one or more cameras.

101. A computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:while displaying, via the one or more display generation components, a camera user interface and before media capture has started based on a user input requesting media capture:detecting a change in a number of subjects that are available to be captured via the one or more cameras; andin response to detecting the change in the number of subjects that are available to be captured via the one or more cameras, changing a zoom level for capturing media with the one or more cameras.2541019401Attorney Docket No.: P71055W01 / 77770000-858501102. A computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:means for, while displaying, via the one or more display generation components, a camera user interface and before media capture has started based on a user input requesting media capture:detecting a change in a number of subjects that are available to be captured via the one or more cameras; andin response to detecting the change in the number of subjects that are available to be captured via the one or more cameras, changing a zoom level for capturing media with the one or more cameras.

103. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for:while displaying, via the one or more display generation components, a camera user interface and before media capture has started based on a user input requesting media capture:detecting a change in a number of subjects that are available to be captured via the one or more cameras; andin response to detecting the change in the number of subjects that are available to be captured via the one or more cameras, changing a zoom level for capturing media with the one or more cameras.

104. A method, comprising:at a computer system that is in communication with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction:while displaying, via the one or more display generation components, a camera user interface:detecting, via the one or more input devices, a sequence of one or more inputs that correspond to a request to capture media with both the first set of one or more cameras and the second set of one or more cameras; and2551019401Attorney Docket No.: P71055W01 / 77770000-858501in response to detecting the request to capture media with both the first set of one or more cameras and the second set of one or more cameras, capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras, wherein:a first tracking mode is used for capturing media with the first set of one or more cameras, wherein the first tracking mode includes a first set of one or more rules for changing a current framing of the first set of one or more cameras based on a first set of one or more detected events; anda second tracking mode, different from the first tracking mode, is used for capturing media with the second set of one or more cameras, wherein:the second tracking mode includes a second set of one or more rules for changing a current framing of the second set of one or more cameras based on a second set of one or more detected events; andthe second set of one or more rules is different from the first set of one or more rules.

105. The method of claim 104, the method further comprising:detecting, via the one or more input devices, a first amount of movement of a first face of a first subject;in response to detecting the first amount of movement of the first face of the first subject:in accordance with a determination that the first face of the first subject is within a field-of-view of the second set of one or more cameras, changing a current framing of the second set of one or more cameras; andin accordance with a determination that the first face of the first subject is within a field-of-view of the first set of one or more cameras, forgoing changing a current framing of the first set of one or more cameras.

106. The method of claim 105, wherein the second set of rules includes at least one rule for changing the current framing so as to maintain one or more detected faces of subjects within the current framing of the second set of one or more cameras.

107. The method of any one of claims 105-106, wherein the second set of rules includes at least one rule for changing the current framing so as to maintain one or more detected faces2561019401Attorney Docket No.: P71055W01 / 77770000-858501of subjects within a predetermined portion of the current framing of the second set of one or more cameras.

108. The method of any one of claims 104-107, wherein the camera user interface includes a tracking mode disable user interface object, the method further comprising:detecting, via the one or more user input devices, a user input directed to the tracking mode disable user interface object; andin response to detecting the user input directed to the tracking mode disable user interface object, disabling the first tracking mode and / or disabling the second tracking mode.

109. The method of any one of claims 104-108, wherein:the first set of one or more rules cause a current framing of the first set of one or more cameras to change independently of the second set of one or more rules; andthe second set of one or more rules causes a current framing of the second set of one or more cameras to change independently of the first set of one or more rules.

110. The method of any one of claims 104-109, wherein the media captured concurrently with the first set of one or more cameras and the second set of one or more cameras is video media that is stored as a media stream that includes data from the first set of one or more cameras and data from the second set of one or more cameras.

111. The method of any one of claims 104-109, wherein the media captured concurrently with the first set of one or more cameras and the second set of one or more cameras is video media thatincludes:video from the first set of one or more cameras that is stored as a first media stream; andvideo from the second set of one or more cameras that is stored as a second media stream, separate from the first media stream.

112. The method of any one of claims 104-111, wherein:the sequence of one or more inputs that correspond to the request to capture media with both the first set of one or more cameras and the second set of one or more cameras is detected while the computer system is in a first media capture mode in which capturing 2571019401Attorney Docket No.: P71055W01 / 77770000-858501media concurrently with the first set of one or more cameras and the second set of one or more cameras is enabled; andwhile the computer system is configured to a second media capture mode, different from the first media capture mode, capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras is disabled.

113. The method of any one of claims 104-112, wherein the camera user interface includes a camera selection user interface object, the method further comprising:while the computer system is configured to capture media with the first set of one or more cameras based on a user input requesting media capture, detecting, via the one or more input devices, an input directed to the camera selection user interface object; andin response to detecting the input corresponding to the camera selection user interface object, configuring the computer system to capture media with both the first set of one or more cameras and the second set of one or more cameras.

114. The method of claim 113, wherein the camera selection user interface object, when selected via one or more successive inputs, causes the computer system to switch between two or more ofbeing configured to capture media with the first set of one more cameras;being configured to capture media with the second set of one or more cameras; or being configured to capture media with both the first set of one or more cameras and the second set of one or more cameras.

115. The method of any one of claims 104-114, further comprising:after capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras is, displaying, via the one or more display generation components, a representation of the captured media that includes an indication that media was captured concurrently with the first set of one or more cameras and the second set of one or more cameras.

116. The method of claim 115, wherein the representation of the captured media that includes an indication that media was captured concurrently with the first set of one or more cameras and the second set of one or more cameras includes:2581019401Attorney Docket No.: P71055W01 / 77770000-858501at least a first subportion that is based on media captured via the first set of one or more cameras; andat least a second subportion that is based on media captured via the second set of one or more cameras.

117. The method of claim 115, further comprising:while the representation of the captured media that includes an indication that media was captured concurrently with the first set of one or more cameras and the second set of one or more cameras includes a visual representation of media captured via the first set of one or more cameras, detecting, via the one or more input devices, a change in orientation of the computer system; andin response to detecting the change in orientation of the computer system, updating the representation of the captured media that includes an indication that media was captured concurrently with the first set of one or more cameras and the second set of one or more cameras to include a visual representation of media captured via the second set of one or more cameras.

118. The method of any one of claims 115-117, further comprising:while the representation of the captured media that includes an indication that media was captured concurrently with the first set of one or more cameras and the second set of one or more cameras does not include a visual representation of media captured via the first set of one or more cameras, detecting, via the one or more input devices, an input directed to the representation of the captured media that includes an indication that media was captured concurrently with the first set of one or more cameras and the second set of one or more cameras; andin response to detecting the input directed to the representation of the captured media that includes an indication that media was captured concurrently with the first set of one or more cameras and the second set of one or more cameras, updating the representation of the captured media that includes an indication that media was captured concurrently with the first set of one or more cameras and the second set of one or more cameras to include a visual representation of media captured via the first set of one or more cameras.

119. The method of any one of claims 104-118, wherein the camera user interface, prior to detecting the sequence of one or more inputs that correspond to the request to capture media 2591019401Attorney Docket No.: P71055W01 / 77770000-858501with both the first set of one or more cameras and the second set of one or more cameras, includes a live preview of content from the first set of one or more cameras set of one or more cameras, the method further comprising:in response to detecting the sequence of one or more inputs that correspond to the request to capture media with both the first set of one or more cameras and the second set of one or more cameras, displaying, via the one or more display generation components, a live preview of content from the second set of one or more cameras, wherein the live preview of content from the second set of one or more cameras overlays a portion of the live preview of content from the first set of one or more cameras.

120. The method of any one of claims 104-118, wherein the camera user interface, prior to detecting the sequence of one or more inputs that correspond to the request to capture media with both the first set of one or more cameras and the second set of one or more cameras, includes a live preview of content from the second set of one or more cameras set of one or more cameras, the method further comprising:in response to detecting the sequence of one or more inputs that correspond to the request to capture media with both the first set of one or more cameras and the second set of one or more cameras:reducing the size of the live preview of content from the second set of one or more cameras; anddisplaying, via the one or more display generation components, a live preview of content from the first set of one or more cameras, wherein the live preview of content from the first set of one or more cameras is larger than the reduced live preview of content from the second set of one or more cameras.

121. The method of any one of claims 104-120, wherein the camera user interface includes, while capturing media, a respective live preview of content from the second set of one or more cameras, the method further including:while displaying the respective live preview of content from the second set of one or more cameras, detecting, via the one or more input devices, a sequence of one or more inputs corresponding to a request to modify a size of the respective live preview of content from the second set of one or more cameras; and2601019401Attorney Docket No.: P71055W01 / 77770000-858501in response to detecting the request to modify the size of the respective live preview of content from the second set of one or more cameras, changing the size of the respective live preview of content from the second set of one or more cameras.

122. The method of claim 121, including, during a recording session for recording media with the first set of one or more cameras and while a live preview of content from the second set of one or more cameras is not expanded:in accordance with a determination that a live preview of content from the second set of one or more cameras was previously expanded during a recording session for recording media with the first set of one or more cameras, displaying, via the one or more display generation components, a selectable option to expand a live preview of content from the second set of one or more cameras; andin accordance with a determination that a live preview of content from the second set of one or more cameras was not previously expanded during the recording session for recording media with the first set of one or more cameras, forgoing displaying the selectable option to expand a live preview of content from the second set of one or more cameras.

123. The method of any one of claims 104-122, further comprising:while displaying the camera user interface and while the camera user interface includes a respective live preview of content from the first set of one or more cameras and a respective live preview of content from the second set of one or more cameras:detecting, via the one or more input devices, a sequence of one or more inputs that correspond to a request to move the respective live preview of content from the first set of one or more cameras relative to the respective live preview of content from the second set of one or more cameras; andin response to detecting the sequence of one or more inputs that correspond to the request to move the respective live preview of content from the first set of one or more cameras relative to the respective live preview of content from the second set of one or more cameras, displaying, via the one or more display generation components, the respective live preview of content from the first set of one or more cameras with a visual effect that reduces a fidelity of the live preview of content while the respective live preview of content is moving.2611019401Attorney Docket No.: P71055W01 / 77770000-858501124. The method of claim 123, further comprising:in response to detecting the sequence of one or more inputs that correspond to the request to move the respective live preview of content from the first set of one or more cameras relative to the respective live preview of content from the second set of one or more cameras, moving the respective live preview of content from the first set of one or more cameras within the camera user interface and relative to the respective live preview of content from the second set of one or more cameras, wherein one or more properties of the visual is based on a property of movement of the respective live preview of content from the first set of one or more cameras.

125. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 104-124.

126. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, the computer system comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any of claims 104-124.

127. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, comprising:means for performing the method of any of claims 104-124.

128. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication one or 2621019401Attorney Docket No.: P71055W01 / 77770000-858501more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, the one or more programs including instructions for performing the method of any of claims 104-124.

129. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, the one or more programs including instructions for:while displaying, via the one or more display generation components, a camera user interface:detecting, via the one or more input devices, a sequence of one or more inputs that correspond to a request to capture media with both the first set of one or more cameras and the second set of one or more cameras; andin response to detecting the request to capture media with both the first set of one or more cameras and the second set of one or more cameras, capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras, wherein:a first tracking mode is used for capturing media with the first set of one or more cameras, wherein the first tracking mode includes a first set of one or more rules for changing a current framing of the first set of one or more cameras based on a first set of one or more detected events; anda second tracking mode, different from the first tracking mode, is used for capturing media with the second set of one or more cameras, wherein:the second tracking mode includes a second set of one or more rules for changing a current framing of the second set of one or more cameras based on a second set of one or more detected events; andthe second set of one or more rules is different from the first set of one or more rules.

130. A computer system configured to communicate with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of2631019401Attorney Docket No.: P71055W01 / 77770000-858501one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:while displaying, via the one or more display generation components, a camera user interface:detecting, via the one or more input devices, a sequence of one or more inputs that correspond to a request to capture media with both the first set of one or more cameras and the second set of one or more cameras; andin response to detecting the request to capture media with both the first set of one or more cameras and the second set of one or more cameras, capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras, wherein:a first tracking mode is used for capturing media with the first set of one or more cameras, wherein the first tracking mode includes a first set of one or more rules for changing a current framing of the first set of one or more cameras based on a first set of one or more detected events; anda second tracking mode, different from the first tracking mode, is used for capturing media with the second set of one or more cameras, wherein:the second tracking mode includes a second set of one or more rules for changing a current framing of the second set of one or more cameras based on a second set of one or more detected events; andthe second set of one or more rules is different from the first set of one or more rules.

131. A computer system configured to communicate with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, comprising:means for, while displaying, via the one or more display generation components, a camera user interface:detecting, via the one or more input devices, a sequence of one or more inputs that correspond to a request to capture media with both the first set of one or more cameras and the second set of one or more cameras; and2641019401Attorney Docket No.: P71055W01 / 77770000-858501in response to detecting the request to capture media with both the first set of one or more cameras and the second set of one or more cameras, capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras, wherein:a first tracking mode is used for capturing media with the first set of one or more cameras, wherein the first tracking mode includes a first set of one or more rules for changing a current framing of the first set of one or more cameras based on a first set of one or more detected events; anda second tracking mode, different from the first tracking mode, is used for capturing media with the second set of one or more cameras, wherein:the second tracking mode includes a second set of one or more rules for changing a current framing of the second set of one or more cameras based on a second set of one or more detected events; andthe second set of one or more rules is different from the first set of one or more rules.

132. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and a plurality of cameras that includes a first set of one or more cameras that face a first direction and a second set of one or more cameras that face a second direction, different from the first direction, the one or more programs including instructions for:while displaying, via the one or more display generation components, a camera user interface:detecting, via the one or more input devices, a sequence of one or more inputs that correspond to a request to capture media with both the first set of one or more cameras and the second set of one or more cameras; andin response to detecting the request to capture media with both the first set of one or more cameras and the second set of one or more cameras, capturing media concurrently with the first set of one or more cameras and the second set of one or more cameras, wherein:a first tracking mode is used for capturing media with the first set of one or more cameras, wherein the first tracking mode includes a first set of one or more rules for changing a current framing of the first set of one or more cameras based on a first set of one or more detected events; and2651019401Attorney Docket No.: P71055W01 / 77770000-858501a second tracking mode, different from the first tracking mode, is used for capturing media with the second set of one or more cameras, wherein:the second tracking mode includes a second set of one or more rules for changing a current framing of the second set of one or more cameras based on a second set of one or more detected events; andthe second set of one or more rules is different from the first set of one or more rules.

133. A method, compri sing :at a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras:displaying, via the one or more display generation components, a camera user interface that includes a camera mode selection user interface object, wherein the camera mode selection user interface object includes an indication of a currently selected capture mode for the one or more cameras;detecting, via the one or more input devices, a set of one or more inputs directed to the camera mode selection user interface object; andin response to detecting the set of one or more inputs directed to the camera mode selection user interface object, expanding the camera mode selection user interface object from a first size to a second size, larger than the first size.

134. The method of claim 133, wherein expanding the camera mode selection user interface object from the first size to the second size includes:displaying, via the one or more display generation components, indications of one or more additional modes for the one or more cameras that were not displayed prior to detecting the set of one or more inputs directed to the camera mode selection user interface object.

135. The method of any one of claims 133-134, wherein expanding the camera mode selection user interface object from the first size to the second size includes:expanding the camera mode selection user interface object in a first direction of expansion; andexpanding the camera mode selection user interface object in a second direction of expansion, different from the first direction of expansion2661019401Attorney Docket No.: P71055W01 / 77770000-858501136. The method of any one of claims 133-134, wherein:prior to expanding the camera mode selection user interface object from the first size to the second size, the camera mode selection user interface object includes a first set of one or more mode options for switching between photo capture mode and video capture mode; andthe expanded camera mode selection user interface object includes a second set of one or more mode options that includes at least one mode option for switching to a capture mode that is different from the photo capture mode and video capture mode.

137. The method of any one of claims 133-136, wherein displaying the camera mode selection user interface object includes:in accordance with a determination that the currently selected capture mode for the one or more cameras is first capture mode, displaying the camera mode selection user interface object at a first displayed size; andin accordance with a determination that the currently selected capture mode for the one or more cameras is second capture mode, different from the first capture mode, displaying the camera mode selection user interface object at a second displayed size that is greater than the first displayed size.

138. The method of claim 137, wherein the first capture mode is one of a photo capture mode or a video capture mode.

139. The method of any one of claims 137-138, wherein the second capture mode is one of a slow motion capture mode, a time elapse capture mode, portrait capture mode, a cinematic video capture mode, a panorama capture mode or a spatial capture mode.

140. The method of any one of claims 133-139, wherein the camera mode selection user interface object includes a respective capture mode option that corresponds to a respective capture mode, the method further comprising:while the respective capture mode is not the currently selected capture mode, detecting, via the one or more input devices, an input directed to the respective capture mode option; andin response to detecting the input directed to the respective capture mode option, selecting the respective capture mode as the currently selected capture mode.2671019401Attorney Docket No.: P71055W01 / 77770000-858501141. The method of any one of claims 133-140, wherein displaying the indication of the currently selected capture mode for the one or more cameras includes:in accordance with a determination that the currently selected capture mode is a first currently selected capture, displaying the indication of the currently selected capture mode for the one or more cameras at a first position within the camera mode selection user interface object; andin accordance with a determination that the currently selected capture mode is a second currently selected capture mode, different from the first currently selected capture mode, displaying the indication of the currently selected capture mode for the one or more cameras at a second position, different from the first position, within the camera mode selection user interface object.

142. The method of any one of claims 133-141, further comprising:while displaying the camera mode selection user interface object at the second size, detecting, via the one or more input devices, a second set of one or more inputs directed to the camera mode selection user interface object, wherein the second set of one or more inputs includes movement;in response to detecting the second set of one or more inputs, expanding the camera mode selection user interface object from the second size to a third size, larger than the second size.

143. The method of claim 142, further comprising:in response to detecting the second set of one or more inputs:in accordance with a determination that the movement has a first movement characteristic, switching the currently selected capture mode to a third capture mode determined based on the first movement characteristic wherein the third capture mode is different from the first capture mode; andin accordance with a determination that the movement has a second movement characteristic, different from the first movement characteristic, switching the currently selected capture mode to a fourth capture mode determined based on the second movement characteristic, wherein the fourth capture mode is different from the third capture mode and the first capture mode.2681019401Attorney Docket No.: P71055W01 / 77770000-858501144. The method of claim 143, wherein:switching the currently selected capture mode to the third capture mode includes outputting a first non-visual indication; andswitching the currently selected capture mode to the fourth capture mode includes outputting a second non-visual indication.

145. The method of any one of claims 142-144, wherein the movement included in the second set of one or more inputs is in a first direction of movement, the method further comprising:detecting, via the one or more input devices, a third set of one or more inputs directed to the camera mode selection user interface object, wherein the third set of one or more inputs includes movement in a second direction of movement, different from the first direction of movement; andin response to detecting the third set of one or more inputs, displaying, via the one or more display generation components, one or more respective control user interface objects that are selectable to perform corresponding operations within the camera user interface.

146. The method of claim 145, wherein:camera mode selection user interface object includes a representation of a first camera mode, a representation of a second camera mode, and a respective user interface element that moves to indicate whether the first camera mode or the second camera mode is a currently selected camera mode;displaying the one or more respective control user interface objects includes expanding the respective user interface element; andthe one or more respective control user interface objects are displayed within the expanded respective user interface element.

147. The method of any one of claims 133-146, wherein displaying the camera user interface includes displaying, concurrently with the camera mode selection user interface object prior to the camera mode selection user interface object being expanded, one or more camera controls that include a first camera control at a first location in the camera user interface, the method further comprising:2691019401Attorney Docket No.: P71055W01 / 77770000-858501in response to detecting the set of one or more inputs directed to the camera mode selection user interface object, ceasing to display the first camera control at the first location in the camera user interface.

148. The method of claim 147, wherein ceasing to display the first camera control at the first location includes moving the first camera control to a second location in the camera user interface, different from the first location.

149. The method of claim 147, wherein ceasing to display the first camera control at the first location includes removing the first camera control from the camera user interface.

150. The method of any one of claims 147-149, wherein the first camera control is a control that, when selected based on an input detected by the one or more input devices, causes the computer system to switch which camera is being used to capture media.

151. The method of any one of claims 147-149, wherein the first camera control is a control that, when selected based on an input detected by the one or more input devices, causes the computer system to display a user interface for displaying previously captured media.

152. The method of any one of claims 133-151, wherein the camera user interface includes one or more zoom controls that includes a first zoom control at a third location within the camera user interface, the method further comprising:detecting, via the one or more input devices, a request to change a zoom level of the camera user interface; andin response to detecting the request to change the zoom level:changing a zoom level of the camera user interface; andshifting the first zoom control to a fourth location within the camera user interface, different from the third location.

153. The method of claim 152, further comprising:detecting, via the one or more input devices, an input directed to the one or more zoom controls; and2701019401Attorney Docket No.: P71055W01 / 77770000-858501in response to detecting the input directed to the one or more zoom controls, expanding the one or more zoom controls to display additional zoom options that were not visible prior to detecting the input directed to the one or more zoom controls.

154. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 133-153.

155. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, the computer system comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any of claims 133-153.

156. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:means for performing the method of any of claims 133-153.

157. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 133-153.

158. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for:displaying, via the one or more display generation components, a camera user interface that includes a camera mode selection user interface object, wherein the camera 2711019401Attorney Docket No.: P71055W01 / 77770000-858501mode selection user interface object includes an indication of a currently selected capture mode for the one or more cameras;detecting, via the one or more input devices, a set of one or more inputs directed to the camera mode selection user interface object; andin response to detecting the set of one or more inputs directed to the camera mode selection user interface object, expanding the camera mode selection user interface object from a first size to a second size, larger than the first size.

159. A computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:displaying, via the one or more display generation components, a camera user interface that includes a camera mode selection user interface object, wherein the camera mode selection user interface object includes an indication of a currently selected capture mode for the one or more cameras;detecting, via the one or more input devices, a set of one or more inputs directed to the camera mode selection user interface object; andin response to detecting the set of one or more inputs directed to the camera mode selection user interface object, expanding the camera mode selection user interface object from a first size to a second size, larger than the first size.

160. A computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:means for displaying, via the one or more display generation components, a camera user interface that includes a camera mode selection user interface object, wherein the camera mode selection user interface object includes an indication of a currently selected capture mode for the one or more cameras;means for detecting, via the one or more input devices, a set of one or more inputs directed to the camera mode selection user interface object; andmeans for, in response to detecting the set of one or more inputs directed to the camera mode selection user interface object, expanding the camera mode selection user interface object from a first size to a second size, larger than the first size.2721019401Attorney Docket No.: P71055W01 / 77770000-858501161. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for:displaying, via the one or more display generation components, a camera user interface that includes a camera mode selection user interface object, wherein the camera mode selection user interface object includes an indication of a currently selected capture mode for the one or more cameras;detecting, via the one or more input devices, a set of one or more inputs directed to the camera mode selection user interface object; andin response to detecting the set of one or more inputs directed to the camera mode selection user interface object, expanding the camera mode selection user interface object from a first size to a second size, larger than the first size.

162. A method, comprising:at a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras:displaying, via the one or more display generation components, a camera user interface that includes a first plurality of camera controls, wherein the first plurality of camera controls includes a respective platter that corresponds to one or more of the camera controls of the first plurality of camera controls;detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display additional camera controls; andin response to detecting the set of one or more inputs corresponding to the request to display additional camera controls:expanding the respective platter from a first size to a second size, larger than the first size;displaying, via the one or more generation components, a second plurality of camera controls, different from the first plurality of camera controls, wherein, the respective platter, when displayed at the second size, occupies a first portion of the camera user interface that was previously occupied by one or more of the first plurality of camera controls; andceasing to display one or more of the first plurality of camera controls.2731019401Attorney Docket No.: P71055W01 / 77770000-858501163. The method of claim 162, wherein the respective platter is part of a camera mode selection user interface object that, when selected based on an input detected by the one or more input devices, causes the computer system to switch a camera capture mode.

164. The method of any one of claims 162-163, wherein the respective platter, when expanded, is partially translucent.

165. The method of claim 164, wherein:the camera user interface includes a live preview of content from the one or more cameras;the respective platter, when expanded, overlays at a least a first portion of the live preview of content; anda distorted version of the first portion of the live preview of content that is overlaid by the respective platter is visible through the respective platter, when the respective platter is expanded.

166. The method of claim 165, wherein:the respective platter, when unexpanded, is partially translucent and overlays a second portion of the live preview of content that is different from the first portion of the live preview of the content;a distorted version of the second portion of the live preview of content that is overlaid by the respective platter is visible through the respective platter, when the respective platter is unexpanded; andthe distorted version of the first portion of the live preview of content is more distorted than the distorted version of the second portion of the live preview of content.

167. The method of any one of claims 162-166, wherein:ceasing to display one or more of the first plurality of camera controls includes ceasing to display a first camera control that was displayed at a first location in the camera user interface;the first location is occupied by the respective platter, when the respective platter is expanded; and2741019401Attorney Docket No.: P71055W01 / 77770000-858501the first location is not occupied by the respective platter, when the respective platter is unexpanded.

168. The method of any one of claims 162-167, wherein the first plurality of camera controls includes one or more ofa control that, when selected based on an input detected by the one or more input devices, causes the computer system to capture media with the one or more cameras;a control that, when selected based on an input detected by the one or more input devices, causes the computer system to switch which camera is being used to capture media; anda control that, when selected based on an input detected by the one or more input devices, causes the computer system to display a camera roll.

169. The method of any one of claims 162-168, further comprising:detecting, via the one or more input devices, a second set of one or more inputs that includes detecting an input directed to a respective control of the second plurality of camera controls; andin response to detecting the second set of one or more inputs, displaying one or more of the first plurality of camera controls that ceased to be displayed in response to detecting the set of one or more inputs.

170. The method of any one of claims 162-169, further comprising:while the respective platter is displayed at the second size, detecting, via the one or more input devices, a sequence of one or more inputs that corresponds to a request to display the respective platter at the first size; andin response to detecting the sequence of one or more inputs that corresponds to the request to display the respective platter at the first size:displaying, via the one or more display generation components, the respective platter at the first size; anddisplaying, via the one or more display generation components, one or more of the first plurality of camera controls that ceased to be displayed in response to detecting the set of one or more inputs.2751019401Attorney Docket No.: P71055W01 / 77770000-858501171. The method of any one of claims 162-170, wherein:the camera user interface includes an additional control selectable user interface object; andthe set of one or more inputs corresponding to a request to display additional camera controls includes an input directed to the additional control selectable user interface object.

172. The method of any one of claims 162-171, wherein the set of one or more inputs corresponding to a request to display additional camera controls includes:a gesture of a first type directed to a first portion of the camera user interface; and / or a gesture of a second type, different from the first type, directed to a second portion of the camera user interface, different from the first portion.

173. The method of any one of claims 162-172, further comprising:detecting, via the one or more input devices, a third set of one or more inputs that includes an input directed to a first control of the second plurality of camera controls; and in response to detecting the third set of one or more inputs, initiating a process to change a camera setting that corresponds to the first control.

174. The method of claim 173, wherein initiating the process to change the camera setting that corresponds to the first control includes changing the camera setting that corresponds to the first control.

175. The method of any one of claims 173-174, wherein initiating the process to change the camera setting that corresponds to the first control includes displaying, via the one or more display generation components, an adjustment control for adjusting a parameter of the camera setting that corresponds to the first control.

176. The method of any one of claims 173-175, wherein initiating the process to change the camera setting that corresponds to the first control includes:in accordance with a determination that a respective parameter of the camera setting that corresponds to the first control has been changed to a respective value that is different from a default value and a determination that the respective platter is being displayed at the first size, displaying, via the one or more display generation components and in the camera user interface, an indication of the respective value.2761019401Attorney Docket No.: P71055W01 / 77770000-858501177. The method of claim 176, wherein displaying the indication of the respective value includes:in accordance with a determination that camera setting that corresponds to the first control is first type of camera setting, the indication of the respective value is displayed at a third location in the camera user interface; andin accordance with a determination that camera setting that corresponds to the first control is second type of camera setting, different from the first type of camera setting, the indication of the respective value is displayed at a fourth location in the camera user interface, different from the third location.

178. The method of claim 177, wherein:the indication of the respective value, when displayed at the third location, is not selectable to change the camera setting that corresponds to the first control; andthe indication of the respective value, when displayed at the fourth location, is selectable to change the camera setting that corresponds to the first control.

179. The method of any one of claims 177-178, wherein the third location is closer to a respective edge of the one or more display generation components than the fourth location.

180. The method of any one of claims 162-179, further comprising:while the respective platter is displayed at the second size, detecting, via the one or more input devices, a fourth set of one or more inputs that includes an input outside of the respective platter; andin response to detecting the fourth set of one or more inputs, ceasing to display the respective platter at the second size.

181. The method of any one of claims 162-180, further comprising:while the respective platter is displayed at the second size, detecting, via the one or more input devices, a fifth set of one or more inputs that includes an input directed to the respective platter; andin response to detecting the fifth set of one or more inputs, ceasing to display the respective platter at the second size.2771019401Attorney Docket No.: P71055W01 / 77770000-858501182. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 162-181.

183. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, the computer system comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any of claims 162-181.

184. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:means for performing the method of any of claims 162-181.

185. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 162-181.

186. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for:displaying, via the one or more display generation components, a camera user interface that includes a first plurality of camera controls, wherein the first plurality of camera controls includes a respective platter that corresponds to one or more of the camera controls of the first plurality of camera controls;detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display additional camera controls; and2781019401Attorney Docket No.: P71055W01 / 77770000-858501in response to detecting the set of one or more inputs corresponding to the request to display additional camera controls:expanding the respective platter from a first size to a second size, larger than the first size;displaying, via the one or more generation components, a second plurality of camera controls, different from the first plurality of camera controls, wherein, the respective platter, when displayed at the second size, occupies a first portion of the camera user interface that was previously occupied by one or more of the first plurality of camera controls; andceasing to display one or more of the first plurality of camera controls.

187. A computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:displaying, via the one or more display generation components, a camera user interface that includes a first plurality of camera controls, wherein the first plurality of camera controls includes a respective platter that corresponds to one or more of the camera controls of the first plurality of camera controls;detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display additional camera controls; andin response to detecting the set of one or more inputs corresponding to the request to display additional camera controls:expanding the respective platter from a first size to a second size, larger than the first size;displaying, via the one or more generation components, a second plurality of camera controls, different from the first plurality of camera controls, wherein, the respective platter, when displayed at the second size, occupies a first portion of the camera user interface that was previously occupied by one or more of the first plurality of camera controls; andceasing to display one or more of the first plurality of camera controls.2791019401Attorney Docket No.: P71055W01 / 77770000-858501188. A computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:means for displaying, via the one or more display generation components, a camera user interface that includes a first plurality of camera controls, wherein the first plurality of camera controls includes a respective platter that corresponds to one or more of the camera controls of the first plurality of camera controls;means for detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display additional camera controls; andmeans for, in response to detecting the set of one or more inputs corresponding to the request to display additional camera controls:expanding the respective platter from a first size to a second size, larger than the first size;displaying, via the one or more generation components, a second plurality of camera controls, different from the first plurality of camera controls, wherein, the respective platter, when displayed at the second size, occupies a first portion of the camera user interface that was previously occupied by one or more of the first plurality of camera controls; andceasing to display one or more of the first plurality of camera controls.

189. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for:displaying, via the one or more display generation components, a camera user interface that includes a first plurality of camera controls, wherein the first plurality of camera controls includes a respective platter that corresponds to one or more of the camera controls of the first plurality of camera controls;detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display additional camera controls; andin response to detecting the set of one or more inputs corresponding to the request to display additional camera controls:expanding the respective platter from a first size to a second size, larger than the first size;2801019401Attorney Docket No.: P71055W01 / 77770000-858501displaying, via the one or more generation components, a second plurality of camera controls, different from the first plurality of camera controls, wherein, the respective platter, when displayed at the second size, occupies a first portion of the camera user interface that was previously occupied by one or more of the first plurality of camera controls; andceasing to display one or more of the first plurality of camera controls.

190. A method, comprising:at a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras:detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display a camera user interface for capturing media using the one or more cameras at a respective zoom level; andin response to detecting the set of one or more inputs corresponding to the request to display the camera user interface for capturing media using the one or more cameras at the respective zoom level, displaying, via the one or more display generation components, the camera user interface, including:in accordance with a determination that the respective zoom level is a first zoom level, displaying a zoom control user interface object for adjusting a zoom level of the one or more cameras at a first location in the camera user interface; andin accordance with a determination that the respective zoom level is a second zoom level, different from the first zoom level, displaying the zoom control user interface object for adjusting a zoom level of the one or more cameras at a second location in the camera user interface, different from the first location.

191. The method of claim 190, further comprising:detecting, via the one or more input devices, a first input directed to the zoom control user interface object; andin response to detecting the first input, adjusting the zoom level of the one or more cameras.2811019401Attorney Docket No.: P71055W01 / 77770000-858501192. The method of any one of claims 190-191, further comprising:detecting, via the one or more input devices, a second input directed to the zoom control user interface object; andin response to the second input:in accordance with a determination that the second input is directed to the first location in the camera user interface while the respective zoom level is the first zoom level when the second input is detected, adjusting the zoom level to the third zoom level;in accordance with a determination that the second input is directed to the first location in the camera user interface while the respective zoom level is the second zoom level when the second input is detected, forgoing adjusting the zoom level to the third zoom level;in accordance with a determination that the second input is directed to the second location in the camera user interface while the respective zoom level is the second zoom level when the second input is detected, adjusting the zoom level to the third zoom level; andin accordance with a determination that the second input is directed to the second location in the camera user interface while the respective zoom level is the first zoom level when the second input is detected, forgoing adjusting the zoom level to the third zoom level.

193. The method of claim 192, wherein:the zoom control user interface object concurrently includes:a first portion that corresponds to the first zoom level;a second portion that corresponds to the second zoom level; and a third portion that corresponds to the third zoom level; andthe first portion, the second portion, and the third portion of the zoom control user interface object are displayed at different locations in the camera user interface.

194. The method of any one of claims 190-193, further comprising:detecting, via the one or more input devices, a first respective input directed to a first respective location of the camera user interface; andin response to detecting the first respective input:in accordance with a determination that the respective zoom level is the first zoom level, adjusting the zoom level based on the first respective input; and2821019401Attorney Docket No.: P71055W01 / 77770000-858501in accordance with a determination that the respective zoom level is the second zoom level, performing a first camera focus operation based on the first respective input.

195. The method of claim 194, further comprising:detecting, via the one or more input devices, a second respective input directed to a second respective location of the camera user interface, different from the first respective location;in response to detecting the second respective input:in accordance with a determination that the respective zoom level is the first zoom level, performing a second camera focus operation based on the second respective input; andin accordance with a determination that the respective zoom level is the second zoom level, adjusting the zoom level based on the second respective input.

196. The method of any one of claims 190-195, further comprising:displaying, via the one or more display generation components, an indication of the respective zoom level at a respective location within the camera user interface, including:in accordance with a determination that the respective zoom level is the first zoom level, displaying an indication of the first zoom level at the respective location within the camera user interface; andin accordance with a determination that the respective zoom level is the second zoom level, displaying an indication of the second zoom level at the respective location within the camera user interface.

197. The method of claim 196, wherein:displaying the zoom control user interface object includes concurrently displaying an indication of the respective zoom level and one or more indications of other zoom levels and an indication of the respective zoom level is visually emphasized relative to the one or more indications of other zoom levels, including:in accordance with a determination that the respective zoom level is the first zoom level, visually emphasizing the indication of the first zoom level relative to indications of one or more other zoom levels; and2831019401Attorney Docket No.: P71055W01 / 77770000-858501in accordance with a determination that the respective zoom level is the second zoom level, visually emphasizing the indication of the second zoom level relative to indications of one or more other zoom levels.

198. The method of claim 197, wherein the plurality of controls for adjusting the zoom level includes:a first indication of a first different zoom level that is a first distance from the respective location;a second indication of a second different zoom level that is a second distance from the respective location; andthe second indication of the second different zoom level is visually deemphasized relative to the first indication of the first different zoom level.

199. The method of any one of claims 196-198, further comprising:displaying, via the one or more display generation components and concurrently with the zoom control user interface object, one or more camera controls;while displaying the one or more camera controls, detecting, via the one or more input devices, an input directed to a respective camera control of the one or more other camera controls (e.g., a tap input, air tap input, click or button press that is directed to the respective camera control and / or is detected while attention is directed to the respective camera control); andin response to detecting the input directed to the respective camera control, initiating a process to perform an operation associated with the camera.

200. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 190-199.

201. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, the computer system comprising:one or more processors; and2841019401Attorney Docket No.: P71055W01 / 77770000-858501memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any of claims 190-199.

202. A computer system that is configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:means for performing the method of any of claims 190-199.

203. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 190-199.

204. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for:detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display a camera user interface for capturing media using the one or more cameras at a respective zoom level; andin response to detecting the set of one or more inputs corresponding to the request to display the camera user interface for capturing media using the one or more cameras at the respective zoom level, displaying, via the one or more display generation components, the camera user interface, including:in accordance with a determination that the respective zoom level is a first zoom level, displaying a zoom control user interface object for adjusting a zoom level of the one or more cameras at a first location in the camera user interface; andin accordance with a determination that the respective zoom level is a second zoom level, different from the first zoom level, displaying the zoom control user interface object for adjusting a zoom level of the one or more cameras at a second location in the camera user interface, different from the first location.2851019401Attorney Docket No.: P71055W01 / 77770000-858501205. A computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display a camera user interface for capturing media using the one or more cameras at a respective zoom level; andin response to detecting the set of one or more inputs corresponding to the request to display the camera user interface for capturing media using the one or more cameras at the respective zoom level, displaying, via the one or more display generation components, the camera user interface, including:in accordance with a determination that the respective zoom level is a first zoom level, displaying a zoom control user interface object for adjusting a zoom level of the one or more cameras at a first location in the camera user interface; andin accordance with a determination that the respective zoom level is a second zoom level, different from the first zoom level, displaying the zoom control user interface object for adjusting a zoom level of the one or more cameras at a second location in the camera user interface, different from the first location.

206. A computer system configured to communicate with one or more input devices, one or more display generation components, and one or more cameras, comprising:means for detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display a camera user interface for capturing media using the one or more cameras at a respective zoom level; andmeans for, in response to detecting the set of one or more inputs corresponding to the request to display the camera user interface for capturing media using the one or more cameras at the respective zoom level, displaying, via the one or more display generation components, the camera user interface, including:in accordance with a determination that the respective zoom level is a first zoom level, displaying a zoom control user interface object for adjusting a zoom level of the one or more cameras at a first location in the camera user interface; andin accordance with a determination that the respective zoom level is a second zoom level, different from the first zoom level, displaying the zoom control user interface 2861019401Attorney Docket No.: P71055W01 / 77770000-858501object for adjusting a zoom level of the one or more cameras at a second location in the camera user interface, different from the first location.

207. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input devices, one or more display generation components, and one or more cameras, the one or more programs including instructions for:detecting, via the one or more user input devices, a set of one or more inputs corresponding to a request to display a camera user interface for capturing media using the one or more cameras at a respective zoom level; andin response to detecting the set of one or more inputs corresponding to the request to display the camera user interface for capturing media using the one or more cameras at the respective zoom level, displaying, via the one or more display generation components, the camera user interface, including:in accordance with a determination that the respective zoom level is a first zoom level, displaying a zoom control user interface object for adjusting a zoom level of the one or more cameras at a first location in the camera user interface; andin accordance with a determination that the respective zoom level is a second zoom level, different from the first zoom level, displaying the zoom control user interface object for adjusting a zoom level of the one or more cameras at a second location in the camera user interface, different from the first location.

208. A method, comprising:at a computer system that is in communication with one or more input, one or more display generation components, and one or more cameras:detecting an event associated with displaying a camera user interface;in response to detecting the event associated with displaying the camera user interface, displaying, via the one or more display generation components, the camera user interface, including displaying concurrently within the camera user interface:a live preview of content from the one or more cameras; and a plurality of selectable options including a first selectable option and a second selectable option that is different from the first selectable option;detecting, via the one or more input devices, a selection input; and in response to detecting the selection input:2871019401Attorney Docket No.: P71055W01 / 77770000-858501in accordance with a determination that the selection input is directed to the first selectable option of the plurality of selectable options, changing a zoom level of the live preview of content from the one or more cameras; andin accordance with a determination that the selection input is directed to the second selectable option of the plurality of selectable options, different from the first selectable option, changing a capture orientation of media captured by the one or more cameras via the camera user interface.

209. The method of claim 208, further comprising:while displaying the camera user interface, detecting, via the one or more input devices, a capture input; andin response to detecting the capture input, capturing, via the one or more cameras, media that corresponds to the live preview of content.

210. The method of any one of claims 208-209, wherein:the one or more cameras include a first camera that includes a camera sensor; and changing a capture orientation of media captured by the one or more cameras includes changing a portion of the camera sensor that is designated for capturing media from a first portion of the camera sensor to a second portion of the camera sensor, different from the first portion.

211. The method of claim 210, wherein the second portion of the camera sensor includes at least a portion of the camera sensor that was not designated for capturing media prior to detecting the selection input.

212. The method of any one of claims 210-211, wherein the first portion of the camera sensor includes at least a portion of the camera sensor that is not designated for capturing media in response to detecting the selection input.

213. The method of any one of claims 208-212, wherein the plurality of selectable options includes a mode selectable option that corresponds to a first capture mode, the method further comprising:2881019401Attorney Docket No.: P71055W01 / 77770000-858501in response to detecting the selection input and in accordance with a determination that the selection input is directed to the mode selectable option, changing a capture mode of the one or more cameras from a current capture mode to the first capture mode.

214. The method of any one of claims 208-213, the further comprising:while the live preview of content is a live preview of content from a first set of one or more cameras of the one or more cameras, detecting, via the one or more input devices, a request to change from the first set of one or more cameras to a second set of one or more cameras of the one or more cameras; andin response to the detecting the request to change from the first set of one more cameras to the second set of one or more cameras:changing from the first set of one more cameras to the second set of one or more cameras; andceasing to display one or more selectable options of the plurality of selectable options.

215. The method of any one of claims 208-214, wherein:changing the zoom level of the live preview of content from the one or more cameras includes displaying, via the one or more display generation components, an indication that the zoom level has been changed; andchanging the capture orientation of media captured by the one or more cameras includes displaying, via the one or more display generation components, an indication that the capture orientation has been changed.

216. The method of claim 215, wherein the indication that the zoom level has changed has a visual appearance that is different from a visual appearance of the indication that the capture orientation has changed.

217. The method of any one of claims 208-216, further comprising:detecting that a set of one or more criteria for changing a capture parameter have been met; andin response to detecting that the set of one or more criteria for changing a capture parameter have been met, automatically changing a value of the capture parameter, including:2891019401Attorney Docket No.: P71055W01 / 77770000-858501in accordance with a determination that a set of one or more zoom level change criteria are met, automatically changing the zoom level of the live preview of content from the one or more cameras; andin accordance with a determination that a set of one or more capture orientation change criteria are met, automatically changing the capture orientation of media captured by the one or more cameras via the camera user interface.

218. The method of claim 217, further comprising:detecting, via the one or more input devices, a set of one or more inputs corresponding to a request to manually change the value of the capture parameter; andin response to detecting the set of one or more inputs corresponding to the request to manually change the value of the capture parameter:changing the value of the capture parameter in accordance with the set of one or more inputs corresponding to the request to manually change the value of the capture parameter;in accordance with a determination that automatic changes to the value of the capture parameter were enabled when the set of one or more inputs corresponding to the request to manually change the value of the capture parameter was detected, displaying a visual indication that automatic changes to the value of the capture parameter are disabled; andin accordance with a determination that automatic changes to the value of the capture parameter were disable when the set of one or more inputs corresponding to the request to manually change the value of the capture parameter was detected, forgoing display of the visual indication that automatic changes to the value of the capture parameter are disabled.

219. The method of claim 217, further comprising:in conjunction with automatically changing the value of the capture parameter, displaying, via the one or more display generation components, an indication that the value of the capture parameter has changed.

220. The method of claim 219, wherein the indication that the value of the capture parameter has been automatically changed has a first appearance and the method includes:2901019401Attorney Docket No.: P71055W01 / 77770000-858501detecting, via the one or more input devices, a set of one or more inputs corresponding to a request to manually change the value of the capture parameter; andin response to detecting the set of one or more inputs corresponding to the request to manually change the value of the capture parameter:changing the value of the capture parameter in accordance with the set of one or more inputs corresponding to the request to manually change the value of the capture parameter; anddisplaying an indication that the value of the capture parameter has been manually changed wherein the indication that the value of the capture parameter has been manually changed as a second appearance that is different from the first appearance of the indication that the value of the capture parameter has been automatically changed.

221. The method of claim 217, further comprising:detecting, via the one or more input devices, a set of one or more inputs corresponding to a request to disable automatic changes to the value of the capture parameter; andin response to detecting the set of one or more inputs corresponding to the request to disable automatic changes to the value of the capture parameter:disabling automatic changing of the value of the capture parameter; and displaying, via the one or more display generation components, a visual indication that automatic changes to the value of the capture parameter have been disabled that has a third visual appearance, wherein:the appearance of the indication that the value of the capture parameter has been automatically changed has a first value for a respective visual characteristic; and the appearance of the indication that automatic changes to the value of the capture parameter have been disabled has a second value, different from the first value, for the respective visual characteristic.

222. The method of any one of claims 217-221, wherein:automatic changing of a value of the capture parameter is enabled when the selection input is detected; andmanually changing the value of the capture parameter causes automatic changing of the value of the capture parameter to be disabled.2911019401Attorney Docket No.: P71055W01 / 77770000-858501223. The method of any one of claims 217-220, wherein:automatic changing of a value of the capture parameter is enabled when the selection input is detected; andmanually changing the value of the capture parameter causes automatic changing of the value of the capture parameter to be disabled until a first set of respective criteria are met.

224. The method of any one of claims 217-223, wherein:the camera user interface includes a third selectable option, different from the first selectable option and the second selectable option; andthe method further comprises:in response to detecting the selection input and in accordance with a determination that the selection input is directed to the third selectable option, disabling automatic changing of a first capture parameter.

225. The method of claim 224, wherein:the camera user interface includes a fourth selectable option, different from the first selectable option, the second selectable option, and the third selectable option; andthe method further comprises, in response to detecting the selection input and in accordance with a determination that the selection input is directed to the fourth selectable option, disabling automatic changing of a second capture parameter, different from the first capture parameter.

226. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 208-225.

227. A computer system that is configured to communicate with one or more input, one or more display generation components, and one or more cameras, the computer system comprising:one or more processors; and2921019401Attorney Docket No.: P71055W01 / 77770000-858501memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any of claims 208-225.

228. A computer system that is configured to communicate with one or more input, one or more display generation components, and one or more cameras, comprising:means for performing the method of any of claims 208-225.

229. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input, one or more display generation components, and one or more cameras, the one or more programs including instructions for performing the method of any of claims 208-225.

230. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input, one or more display generation components, and one or more cameras, the one or more programs including instructions for:detecting an event associated with displaying a camera user interface;in response to detecting the event associated with displaying the camera user interface, displaying, via the one or more display generation components, the camera user interface, including displaying concurrently within the camera user interface:a live preview of content from the one or more cameras; anda plurality of selectable options including a first selectable option and a second selectable option that is different from the first selectable option;detecting, via the one or more input devices, a selection input; andin response to detecting the selection input:in accordance with a determination that the selection input is directed to the first selectable option of the plurality of selectable options, changing a zoom level of the live preview of content from the one or more cameras; andin accordance with a determination that the selection input is directed to the second selectable option of the plurality of selectable options, different from the first selectable option, changing a capture orientation of media captured by the one or more cameras via the camera user interface.2931019401Attorney Docket No.: P71055W01 / 77770000-858501231. A computer system configured to communicate with one or more input, one or more display generation components, and one or more cameras, comprising:one or more processors; andmemory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:detecting an event associated with displaying a camera user interface;in response to detecting the event associated with displaying the camera user interface, displaying, via the one or more display generation components, the camera user interface, including displaying concurrently within the camera user interface:a live preview of content from the one or more cameras; and a plurality of selectable options including a first selectable option and a second selectable option that is different from the first selectable option;detecting, via the one or more input devices, a selection input; and in response to detecting the selection input:in accordance with a determination that the selection input is directed to the first selectable option of the plurality of selectable options, changing a zoom level of the live preview of content from the one or more cameras; andin accordance with a determination that the selection input is directed to the second selectable option of the plurality of selectable options, different from the first selectable option, changing a capture orientation of media captured by the one or more cameras via the camera user interface.

232. A computer system configured to communicate with one or more input, one or more display generation components, and one or more cameras, comprising:means for detecting an event associated with displaying a camera user interface; means for, in response to detecting the event associated with displaying the camera user interface, displaying, via the one or more display generation components, the camera user interface, including displaying concurrently within the camera user interface:a live preview of content from the one or more cameras; anda plurality of selectable options including a first selectable option and a second selectable option that is different from the first selectable option;means for detecting, via the one or more input devices, a selection input; and means for, in response to detecting the selection input:2941019401Attorney Docket No.: P71055W01 / 77770000-858501in accordance with a determination that the selection input is directed to the first selectable option of the plurality of selectable options, changing a zoom level of the live preview of content from the one or more cameras; andin accordance with a determination that the selection input is directed to the second selectable option of the plurality of selectable options, different from the first selectable option, changing a capture orientation of media captured by the one or more cameras via the camera user interface.

233. A computer program product, comprising one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more input, one or more display generation components, and one or more cameras, the one or more programs including instructions for:detecting an event associated with displaying a camera user interface;in response to detecting the event associated with displaying the camera user interface, displaying, via the one or more display generation components, the camera user interface, including displaying concurrently within the camera user interface:a live preview of content from the one or more cameras; anda plurality of selectable options including a first selectable option and a second selectable option that is different from the first selectable option;detecting, via the one or more input devices, a selection input; andin response to detecting the selection input:in accordance with a determination that the selection input is directed to the first selectable option of the plurality of selectable options, changing a zoom level of the live preview of content from the one or more cameras; andin accordance with a determination that the selection input is directed to the second selectable option of the plurality of selectable options, different from the first selectable option, changing a capture orientation of media captured by the one or more cameras via the camera user interface.2951019401