User interface for managing visual content in media
By communicating with display generation components in the computer system, an efficient user interface is realized to manage visual content in the media, solving the problems of inefficiency and large user cognitive burden in the prior art, and improving operational efficiency and user experience.
Patent Information
- Application Number
- CN202311577936.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2022-03-10
- Filing Date
- 2022-04-15
- Publication Date
- 2025-04-11
- Estimated Expiration
- 2042-04-15
AI Technical Summary
The prior art is inefficient and has a high user cognitive burden for managing visual content in media, especially in battery-driven devices, which consume time and power.
By communicating with the display generation component in the computer system, a faster and more efficient user interface is realized, including a camera user interface that displays both media representation and media capture display representation, automatically displays corresponding text management operation options based on the detected text, and media capture and management are performed when needed.
It reduces user operation time and device energy consumption, improves user interface efficiency and user experience, and extends battery life.
Smart Images

Figure CN117557991B_ABST
Abstract
Description
[0001] This application is a divisional application of the application with international application number PCT / US2022 / 025096, international application date April 15, 2022, date of entry into the Chinese national phase September 28, 2023, national application number 202280026616.9, and invention name “User interface for managing visual content in media”.
[0002] CROSS-REFERENCE TO RELATED APPLICATIONS
[0003] This application claims the benefit of U.S. patent application serial number 63 / 176,847, filed on April 19, 2021, entitled “USER INTERFACES FOR MANAGING VISUAL CONTENT IN MEDIA”; U.S. provisional patent application serial number 63 / 197,497, filed on June 6, 2021, entitled “USER INTERFACES FOR MANAGING VISUAL CONTENT IN MEDIA”; U.S. patent application serial number 17 / 484,844, filed on September 24, 2021, entitled “USER INTERFACES FOR MANAGING VISUAL CONTENT IN MEDIA”; U.S. provisional patent application serial number 17 / 484,714, filed on September 24, 2021, entitled “USER INTERFACES FOR MANAGING VISUAL CONTENT IN MEDIA”; and U.S. provisional patent application serial number 17 / 484,714, filed on September 24, 2021, entitled “USER INTERFACES FOR MANAGING VISUAL CONTENT IN MEDIA”. No. 17 / 484,856, entitled “USER INTERFACES FOR MANAGING VISUAL CONTENT IN MEDIA” and No. 63 / 318,677, filed on March 10, 2022. The contents of these patent applications are hereby incorporated by reference in their entirety. Technical Field
[0004] The present disclosure relates generally to computer user interfaces and, more particularly, to techniques for managing visual content in media. Background Art
[0005] Smartphones and other personal electronic devices allow users to capture and view content in media. Users can capture various types of media, including video and image data. Users can store the captured media on the smart phone or other personal electronic device. Summary of the invention
[0006] However, some techniques for managing visual content in media are often cumbersome and inefficient. For example, some prior art techniques use complex and time-consuming user interfaces that may include multiple keystrokes or keystrokes. Prior art techniques require more time than necessary, which results in wasted user time and device energy. This latter consideration is particularly important in battery-powered devices.
[0007] Therefore, the present technology provides electronic devices with faster and more efficient methods and interfaces for managing visual content in media. Such methods and interfaces optionally supplement or replace other methods for managing visual content in media. Such methods and interfaces reduce the cognitive burden on users and produce more effective human-computer interfaces. For battery-powered computing devices, such methods and interfaces save power and increase the time interval between battery charges.
[0008] According to some embodiments, a method is described. The method is performed at a computer system that communicates with a display generation component. The method includes: displaying a camera user interface including a media representation and a media capture enable representation simultaneously via the display generation component; and when the media representation and the media capture enable representation are displayed simultaneously: based on determining that a corresponding set of standards is satisfied, wherein the corresponding set of standards includes a standard that is satisfied when corresponding text is detected in the media representation, displaying a first user interface object corresponding to one or more text management operations via the display generation component; and based on determining that the corresponding set of standards is not satisfied, abandoning displaying the first user interface object; when displaying the media representation, detecting a first input directed to the camera user interface; and in response to detecting the first input directed to the camera user interface: based on determining that the first input corresponds to a selection of the media capture enable representation, initiating the capture of media to be added to a media library associated with the computer system; and based on determining that the first input corresponds to a selection of the first user interface object, displaying multiple options for managing the corresponding text via the display generation component.
[0009] According to some embodiments, a non-transitory computer-readable storage device is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system, wherein the computer system communicates with a display generation component, and the one or more programs include instructions for the following operations: displaying a camera user interface including a simultaneous display of a media representation and a media capture enable representation via the display generation component; and when the media representation and the media capture enable representation are displayed simultaneously: displaying a first user interface object corresponding to one or more text management operations via the display generation component based on determining that a corresponding set of criteria is satisfied, wherein the corresponding set of criteria includes a standard satisfied when corresponding text is detected in the media representation; and abandoning displaying the first user interface object based on determining that the corresponding set of criteria is not satisfied; when displaying the media representation, detecting a first input directed to the camera user interface; and in response to detecting the first input directed to the camera user interface: initiating the capture of media to be added to a media library associated with the computer system based on determining that the first input corresponds to a selection of the media capture enable representation; and displaying multiple options for managing the corresponding text via the display generation component based on determining that the first input corresponds to a selection of the first user interface object.
[0010] According to some embodiments, a transient computer-readable storage device is described. The transient computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system, wherein the computer system communicates with a display generation component, and the one or more programs include instructions for the following operations: displaying a camera user interface including a simultaneous display of a media representation and a media capture affordance via the display generation component; and when the media representation and the media capture affordance are displayed simultaneously: displaying a first user interface object corresponding to one or more text management operations via the display generation component based on determining that a corresponding set of criteria is satisfied, wherein the corresponding set of criteria includes criteria satisfied when corresponding text is detected in the media representation; and abandoning displaying the first user interface object based on determining that the corresponding set of criteria is not satisfied; when displaying the media representation, detecting a first input directed to the camera user interface; and in response to detecting the first input directed to the camera user interface: initiating the capture of media to be added to a media library associated with the computer system based on determining that the first input corresponds to a selection of the media capture affordance; and displaying multiple options for managing the corresponding text via the display generation component based on determining that the first input corresponds to a selection of the first user interface object.
[0011] According to some embodiments, a computer system configured to communicate with a display generation component is described. The computer system includes: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for the following operations: displaying a camera user interface including a simultaneous display of a media representation and a media capture enable representation via the display generation component; and when the media representation and the media capture enable representation are displayed simultaneously: displaying a first user interface object corresponding to one or more text management operations via the display generation component based on determining that a corresponding set of standards is satisfied, wherein the corresponding set of standards includes a standard that is satisfied when corresponding text is detected in the media representation; and abandoning displaying the first user interface object based on determining that the corresponding set of standards is not satisfied; when displaying the media representation, detecting a first input directed to the camera user interface; and in response to detecting the first input directed to the camera user interface: initiating the capture of media to be added to a media library associated with the computer system based on determining that the first input corresponds to a selection of the media capture enable representation; and displaying multiple options for managing the corresponding text via the display generation component based on determining that the first input corresponds to a selection of the first user interface object.
[0012] According to some embodiments, a computer system configured to communicate with a display generation component is described. The computer system includes: one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; a device for displaying a camera user interface including a simultaneous display of a media representation and a media capture enable representation via the display generation component; and a device for the following operations when the media representation and the media capture enable representation are displayed simultaneously: based on determining that a corresponding set of standards is satisfied, wherein the corresponding set of standards includes a standard that is satisfied when corresponding text is detected in the media representation, a first user interface object corresponding to one or more text management operations is displayed via the display generation component; and based on determining that the corresponding set of standards is not satisfied, the display of the first user interface object is abandoned; a device for detecting a first input directed to the camera user interface when the media representation is displayed; and a device for the following operations in response to detecting the first input directed to the camera user interface: based on determining that the first input corresponds to a selection of the media capture enable representation, initiating the capture of media to be added to a media library associated with the computer system; and based on determining that the first input corresponds to a selection of the first user interface object, displaying multiple options for managing the corresponding text via the display generation component.
[0013] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to be executed by one or more processors of a computer system that communicates with a display generation component. The one or more programs include instructions for the following operations: displaying a camera user interface including a simultaneous display of a media representation and a media capture enable representation via the display generation component; and when the media representation and the media capture enable representation are displayed simultaneously: based on determining that a corresponding set of standards is met, wherein the corresponding set of standards includes a standard that is met when corresponding text is detected in the media representation, displaying a first user interface object corresponding to one or more text management operations via the display generation component; and based on determining that the corresponding set of standards is not met, abandoning displaying the first user interface object; when displaying the media representation, detecting a first input pointing to the camera user interface; and in response to detecting the first input pointing to the camera user interface: based on determining that the first input corresponds to a selection of the media capture enable representation, initiating the capture of media to be added to the media library associated with the computer system; and based on determining that the first input corresponds to a selection of the first user interface object, displaying multiple options for managing the corresponding text via the display generation component.
[0014] According to some embodiments, a method is described. The method is performed at a computer system that communicates with a display generation component and one or more input devices. The method includes: displaying a first representation of a previously captured media item via the display generation component, and when displaying the first representation of the previously captured media item, detecting an input corresponding to a request to display a second representation of the previously captured media item via the one or more input devices; in response to detecting the input corresponding to the request to display the second representation of the previously captured media item, displaying the second representation of the previously captured media item via the display generation component; and when displaying the second representation of the previously captured media item: based on determining that the text portion included in the second representation of the previously captured media item meets the corresponding standard set, displaying a visual indication corresponding to the text portion included in the second representation via the display generation component, the visual indication was not displayed when the first representation of the previously captured media item was displayed.
[0015] According to some embodiments, a non-transitory computer-readable storage device is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system, wherein the computer system communicates with a display generation component and one or more input devices, and the one or more programs include instructions for the following operations: displaying a first representation of a previously captured media item via the display generation component, when displaying the first representation of the previously captured media item, detecting an input corresponding to a request to display a second representation of the previously captured media item via the one or more input devices; in response to detecting the input corresponding to the request to display the second representation of the previously captured media item, displaying the second representation of the previously captured media item via the display generation component; and when displaying the second representation of the previously captured media item: based on determining that the text portion included in the second representation of the previously captured media item meets the corresponding set of criteria, displaying a visual indication corresponding to the text portion included in the second representation via the display generation component, the visual indication not being displayed when the first representation of the previously captured media item is displayed.
[0016] According to some embodiments, a transient computer-readable storage device is described. The transient computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system, wherein the computer system communicates with a display generation component and one or more input devices, and the one or more programs include instructions for the following operations: displaying a first representation of a previously captured media item via the display generation component, when displaying the first representation of the previously captured media item, detecting an input corresponding to a request to display a second representation of the previously captured media item via the one or more input devices; in response to detecting the input corresponding to the request to display the second representation of the previously captured media item, displaying the second representation of the previously captured media item via the display generation component; and when displaying the second representation of the previously captured media item: based on determining that the text portion included in the second representation of the previously captured media item meets the corresponding set of criteria, displaying a visual indication corresponding to the text portion included in the second representation via the display generation component, the visual indication not being displayed when the first representation of the previously captured media item is displayed.
[0017] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system includes: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for the following operations: displaying a first representation of a previously captured media item via the display generation component, when displaying the first representation of the previously captured media item, detecting an input corresponding to a request to display a second representation of the previously captured media item via the one or more input devices; in response to detecting the input corresponding to the request to display the second representation of the previously captured media item, displaying the second representation of the previously captured media item via the display generation component; and when displaying the second representation of the previously captured media item: based on determining that the text portion included in the second representation of the previously captured media item meets the corresponding standard set, displaying a visual indication corresponding to the text portion included in the second representation via the display generation component, the visual indication was not displayed when the first representation of the previously captured media item was displayed.
[0018] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system includes: one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; a device for displaying a first representation of a previously captured media item via the display generation component; a device for detecting an input corresponding to a request to display a second representation of the previously captured media item via the one or more input devices when the first representation of the previously captured media item is displayed; a device for displaying the second representation of the previously captured media item via the display generation component in response to detecting the input corresponding to the request to display the second representation of the previously captured media item; and a device for the following operations when the second representation of the previously captured media item is displayed: based on determining that the text portion included in the second representation of the previously captured media item meets the corresponding set of criteria, displaying a visual indication corresponding to the text portion included in the second representation via the display generation component, the visual indication not being displayed when the first representation of the previously captured media item is displayed.
[0019] According to some embodiments, a computer program product is described. The computer program product includes one or more programs executed by one or more processors of a computer system configured to communicate with a display generation component and one or more input devices. The one or more programs include instructions for the following operations: displaying a first representation of a previously captured media item via the display generation component; when displaying the first representation of the previously captured media item, detecting an input corresponding to a request to display a second representation of the previously captured media item via the one or more input devices; in response to detecting the input corresponding to the request to display the second representation of the previously captured media item, displaying the second representation of the previously captured media item via the display generation component; and when displaying the second representation of the previously captured media item: based on determining that the text portion included in the second representation of the previously captured media item meets the corresponding standard set, displaying a visual indication corresponding to the text portion included in the second representation via the display generation component, the visual indication was not displayed when the first representation of the previously captured media item was displayed.
[0020] According to some embodiments, a method is described. The method is performed at a computer system that communicates with one or more cameras, one or more input devices, and a display generation component. The method includes: displaying a first user interface including a text input area; when displaying the first user interface including the text input area, detecting a request to display a camera user interface; in response to receiving a request to display the camera user interface, displaying the camera user interface via the display generation component, the camera user interface includes: a representation of the field of view of the one or more cameras; and based on determining that the representation of the field of view of the one or more cameras includes detected text that meets one or more criteria, displaying a text insertion user interface object, the text insertion user interface object is selectable to insert at least a portion of the detected text into the text input area; when displaying the representation of the field of view and the text insertion user interface object at the same time, detecting an input corresponding to a selection of the text insertion user interface object via the one or more input devices; and in response to detecting the input corresponding to the selection of the text insertion user interface object, inserting at least a portion of the detected text into the text input area.
[0021] According to some embodiments, a non-transitory computer-readable storage device is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system, wherein the computer system communicates with one or more cameras, one or more input devices, and a display generation component, and the one or more programs include instructions for the following operations: displaying a first user interface including a text input area; when displaying the first user interface including the text input area, detecting a request to display a camera user interface; in response to receiving the request to display the camera user interface, displaying a camera user interface via the display generation component, the camera user interface including: a representation of the field of view of the one or more cameras; and based on determining that the representation of the field of view of the one or more cameras includes detected text that meets one or more criteria, displaying a text insertion user interface object, the text insertion user interface object is selectable to insert at least a portion of the detected text into the text input area; when the representation of the field of view and the text insertion user interface object are displayed simultaneously, detecting an input corresponding to a selection of the text insertion user interface object via the one or more input devices; and in response to detecting the input corresponding to the selection of the text insertion user interface object, inserting at least a portion of the detected text into the text input area.
[0022] According to some embodiments, a transient computer-readable storage device is described. The transient computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system, wherein the computer system communicates with one or more cameras, one or more input devices, and a display generation component, and the one or more programs include instructions for the following operations: displaying a first user interface including a text input area; when displaying the first user interface including the text input area, detecting a request to display a camera user interface; in response to receiving the request to display the camera user interface, displaying a camera user interface via the display generation component, the camera user interface including: a representation of the field of view of the one or more cameras; and based on determining that the representation of the field of view of the one or more cameras includes detected text that meets one or more criteria, displaying a text insertion user interface object, the text insertion user interface object is selectable to insert at least a portion of the detected text into the text input area; when the representation of the field of view and the text insertion user interface object are displayed simultaneously, detecting an input corresponding to a selection of the text insertion user interface object via the one or more input devices; and in response to detecting the input corresponding to the selection of the text insertion user interface object, inserting at least a portion of the detected text into the text input area.
[0023] According to some embodiments, a computer system configured to communicate with one or more cameras, one or more input devices, and a display generation component is described. The computer system includes: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for the following operations: displaying a first user interface including a text input area; when displaying the first user interface including the text input area, detecting a request to display a camera user interface; in response to receiving the request to display the camera user interface, displaying a camera user interface via the display generation component, the camera user interface including: a representation of the field of view of the one or more cameras; and based on determining that the representation of the field of view of the one or more cameras includes detected text that meets one or more criteria, displaying a text insertion user interface object, the text insertion user interface object is selectable to insert at least a portion of the detected text into the text input area; when the representation of the field of view and the text insertion user interface object are displayed simultaneously, detecting an input corresponding to a selection of the text insertion user interface object via the one or more input devices; and in response to detecting the input corresponding to the selection of the text insertion user interface object, inserting at least a portion of the detected text into the text input area.
[0024] According to some embodiments, a computer system configured to communicate with one or more cameras, one or more input devices, and a display generation component is described. The computer system includes: a memory storing one or more programs configured to be executed by the one or more processors; a device for displaying a first user interface including a text input area; a device for detecting a request to display a camera user interface when displaying the first user interface including the text input area; a device for displaying a camera user interface via the display generation component in response to receiving a request to display the camera user interface, the camera user interface including: a representation of the field of view of the one or more cameras; and based on determining that the representation of the field of view of the one or more cameras includes detected text that meets one or more criteria, displaying a text insertion user interface object that is selectable to insert at least a portion of the detected text into the text input area; a device for detecting an input corresponding to a selection of the text insertion user interface object via the one or more input devices when the representation of the field of view and the text insertion user interface object are displayed simultaneously; and a device for inserting at least a portion of the detected text into the text input area in response to detecting the input corresponding to the selection of the text insertion user interface object.
[0025] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to be executed by one or more processors of a computer system communicating with one or more cameras, one or more input devices, and a display generation component. The one or more programs include instructions for the following operations: displaying a first user interface including a text input area; when displaying the first user interface including the text input area, detecting a request to display a camera user interface; in response to receiving a request to display the camera user interface, displaying the camera user interface via the display generation component, the camera user interface includes: a representation of the field of view of the one or more cameras; and based on determining that the representation of the field of view of the one or more cameras includes detected text that meets one or more criteria, displaying a text insertion user interface object, the text insertion user interface object is selectable to insert at least a portion of the detected text into the text input area; when displaying the representation of the field of view and the text insertion user interface object at the same time, detecting an input corresponding to a selection of the text insertion user interface object via the one or more input devices; and in response to detecting the input corresponding to the selection of the text insertion user interface object, inserting at least a portion of the detected text into the text input area.
[0026] According to some embodiments, a method is described. The method is performed at a computer system that communicates with a display generation component. The method includes: displaying a media user interface including a media representation via the display generation component; when displaying the media user interface including the media representation, receiving a request to display additional information about multiple detected features in the media representation; and in response to receiving the request to display additional information about the multiple detected features and when displaying the media user interface including the media representation, displaying one or more indications of the detected features in the media, the one or more indications including a first indication of a first detected feature displayed at a first position in the media representation, the first position corresponding to the position of the first detected feature in the media representation, including: based on determining that the first detected feature is a first feature type, the first indication has a first appearance; and based on determining that the first detected feature is a second feature type different from the first feature type, the first indication has a second appearance different from the first appearance.
[0027] According to some embodiments, a non-transitory computer-readable storage device is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system, wherein the computer system communicates with a display generation component, and the one or more programs include instructions for the following operations: displaying a media user interface including a media representation via the display generation component; when displaying the media user interface including the media representation, receiving a request to display additional information about multiple detected features in the media representation; and in response to receiving the request to display additional information about the multiple detected features and when displaying the media user interface including the media representation, displaying one or more indications of detected features in the media, the one or more indications including a first indication of a first detected feature displayed at a first position in the media representation, the first position corresponding to the position of the first detected feature in the media representation, including: based on determining that the first detected feature is a first feature type, the first indication has a first appearance; and based on determining that the first detected feature is a second feature type different from the first feature type, the first indication has a second appearance different from the first appearance.
[0028] According to some embodiments, a transient computer-readable storage device is described. The transient computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system, wherein the computer system communicates with a display generation component, and the one or more programs include instructions for the following operations: displaying a media user interface including a media representation via the display generation component; when displaying the media user interface including the media representation, receiving a request to display additional information about multiple detected features in the media representation; and in response to receiving the request to display additional information about the multiple detected features and when displaying the media user interface including the media representation, displaying one or more indications of detected features in the media, the one or more indications including a first indication of a first detected feature displayed at a first position in the media representation, the first position corresponding to the position of the first detected feature in the media representation, including: based on determining that the first detected feature is a first feature type, the first indication has a first appearance; and based on determining that the first detected feature is a second feature type different from the first feature type, the first indication has a second appearance different from the first appearance.
[0029] According to some embodiments, a computer system configured to communicate with a display generation component is described. The computer system includes: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for the following operations: displaying a media user interface including a media representation via the display generation component; when displaying the media user interface including the media representation, receiving a request to display additional information about multiple detected features in the media representation; and in response to receiving the request to display additional information about the multiple detected features and when displaying the media user interface including the media representation, displaying one or more indications of detected features in the media, the one or more indications including a first indication of a first detected feature displayed at a first position in the media representation, the first position corresponding to the position of the first detected feature in the media representation, including: based on determining that the first detected feature is a first feature type, the first indication has a first appearance; and based on determining that the first detected feature is a second feature type different from the first feature type, the first indication has a second appearance different from the first appearance.
[0030] According to some embodiments, a computer system configured to communicate with a display generation component is described. The computer system includes: one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; a device for displaying a media user interface including a media representation via the display generation component; a device for receiving a request to display additional information about multiple detected features in the media representation when the media user interface including the media representation is displayed; and a device for displaying one or more indications of detected features in the media in response to receiving the request to display additional information about the multiple detected features and when the media user interface including the media representation is displayed, the one or more indications include a first indication of a first detected feature displayed at a first position in the media representation, the first position corresponding to the position of the first detected feature in the media representation, including: based on determining that the first detected feature is a first feature type, the first indication has a first appearance; and based on determining that the first detected feature is a second feature type different from the first feature type, the first indication has a second appearance different from the first appearance.
[0031] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to be executed by one or more processors of a computer system that communicates with a display generation component. The one or more programs include instructions for the following operations: displaying a media user interface including a media representation via the display generation component; when displaying the media user interface including the media representation, receiving a request to display additional information about multiple detected features in the media representation; and in response to receiving the request to display additional information about the multiple detected features and when displaying the media user interface including the media representation, displaying one or more indications of the detected features in the media, the one or more indications including a first indication of a first detected feature displayed at a first position in the media representation, the first position corresponding to the position of the first detected feature in the media representation, including: based on determining that the first detected feature is a first feature type, the first indication has a first appearance; and based on determining that the first detected feature is a second feature type different from the first feature type, the first indication has a second appearance different from the first appearance.
[0032] According to some embodiments, a method is described. The method is performed at a computer system that communicates with one or more cameras, a display generation component, and one or more input devices. The method includes: receiving a request to display a representation of the field of view of the one or more cameras; in response to receiving the request to display the representation of the field of view of the one or more cameras: displaying the representation of the field of view of the one or more cameras via the display generation component, wherein the representation includes text located in the field of view of the one or more cameras; and automatically displaying multiple indications of the converted text via the display generation component, the multiple indications of the converted text including a first indication of the conversion of a first portion of the text and a second indication of the conversion of a second portion of the text; when the first indication and the second indication are displayed via the display generation component, receiving a request to select a corresponding indication of the multiple conversion portions via the one or more input devices; and in response to receiving the request to select the corresponding indication, based on determining that the request is a request to select the first indication, displaying a first conversion user interface object via the display generation component, the first conversion user interface object including the first portion of the text and the conversion of the first portion of the text without including the conversion of the second portion of the text.
[0033] According to some embodiments, a non-transitory computer-readable storage device is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system, wherein the computer system communicates with one or more cameras, a display generation component, and one or more input devices, the one or more programs including instructions for: receiving a request to display a representation of a field of view of the one or more cameras; in response to receiving the request to display a representation of the field of view of the one or more cameras: displaying, via the display generation component, the representation of the field of view of the one or more cameras, wherein the representation includes text located in the field of view of the one or more cameras; and automatically displaying, via the display generation component, a plurality of indications of transformed text, the plurality of indications of transformed text including a first indication of a transformation of a first portion of the text and a second indication of a transformation of a second portion of the text; while displaying, via the display generation component, the first indication and the second indication, receiving, via the one or more input devices, a request to select a corresponding indication of the plurality of transformed portions; and in response to receiving the request to select the corresponding indication, displaying, via the display generation component, a first transformation user interface object including the first portion of the text and a transformation of the first portion of the text without including a transformation of the second portion of the text, in accordance with determining that the request is a request to select the first indication.
[0034] According to some embodiments, a transitory computer readable storage device is described. The transient computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system, wherein the computer system communicates with one or more cameras, a display generation component, and one or more input devices, the one or more programs including instructions for: receiving a request to display a representation of a field of view of the one or more cameras; in response to receiving the request to display a representation of the field of view of the one or more cameras: displaying, via the display generation component, the representation of the field of view of the one or more cameras, wherein the representation includes text located in the field of view of the one or more cameras; and automatically displaying, via the display generation component, a plurality of indications of transformed text, the plurality of indications of transformed text including a first indication of a transformation of a first portion of the text and a second indication of a transformation of a second portion of the text; while displaying, via the display generation component, the first indication and the second indication, receiving, via the one or more input devices, a request to select a corresponding indication of the plurality of transformed portions; and in response to receiving the request to select the corresponding indication, displaying, via the display generation component, a first transformation user interface object including the first portion of the text and a transformation of the first portion of the text without including a transformation of the second portion of the text, in accordance with determining that the request is a request to select the first indication.
[0035] According to some embodiments, a computer system configured to communicate with one or more cameras, a display generating component, and one or more input devices is described. The computer system includes: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for the following operations: receiving a request to display a representation of the field of view of the one or more cameras; in response to receiving the request to display the representation of the field of view of the one or more cameras: displaying the representation of the field of view of the one or more cameras via the display generation component, wherein the representation includes text located in the field of view of the one or more cameras; and automatically displaying multiple indications of the transformed text via the display generation component, the multiple indications of the transformed text including a first indication of a transformation of a first portion of the text and a second indication of a transformation of a second portion of the text; while displaying the first indication and the second indication via the display generation component, receiving a request to select a corresponding indication of the multiple transformed portions via the one or more input devices; and in response to receiving the request to select the corresponding indication, based on determining that the request is a request to select the first indication, displaying a first transformation user interface object via the display generation component, the first transformation user interface object including the first portion of the text and the transformation of the first portion of the text without including the transformation of the second portion of the text.
[0036] According to some embodiments, a computer system configured to communicate with one or more cameras, a display generating component, and one or more input devices is described. The computer system includes: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for the following means: means for receiving a request to display a representation of the field of view of the one or more cameras; means for the following operations in response to receiving the request to display the representation of the field of view of the one or more cameras: displaying the representation of the field of view of the one or more cameras via the display generation component, wherein the representation includes text located in the field of view of the one or more cameras; and automatically displaying a plurality of indications of transformed text via the display generation component, the plurality of indications of transformed text including a first indication of a transformation of a first portion of the text and a second indication of a transformation of a second portion of the text; means for receiving a request to select a corresponding indication of the plurality of transformed portions via the one or more input devices when displaying the first indication and the second indication via the display generation component; and means for displaying a first transformation user interface object via the display generation component in response to receiving the request to select the corresponding indication, based on determining that the request is a request to select the first indication, the first transformation user interface object including the first portion of the text and the transformation of the first portion of the text without including the transformation of the second portion of the text.
[0037] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to be executed by one or more processors of a computer system in communication with one or more cameras, a display generating component, and one or more input devices. The one or more programs include instructions for the following operations: receiving a request to display a representation of the field of view of the one or more cameras; in response to receiving the request to display the representation of the field of view of the one or more cameras: displaying the representation of the field of view of the one or more cameras via the display generation component, wherein the representation includes text located in the field of view of the one or more cameras; and automatically displaying multiple indications of the converted text via the display generation component, the multiple indications of the converted text including a first indication of the conversion of a first portion of the text and a second indication of the conversion of a second portion of the text; when the first indication and the second indication are displayed via the display generation component, receiving a request to select a corresponding indication of the multiple converted portions via the one or more input devices; and in response to receiving the request to select the corresponding indication, based on determining that the request is a request to select the first indication, displaying a first conversion user interface object via the display generation component, the first conversion user interface object including the first portion of the text and the conversion of the first portion of the text but not including the conversion of the second portion of the text.
[0038] According to some embodiments, a method performed at a computer system that communicates with a display generation component is described. The method includes: when displaying a user interface including a media representation, detecting a request to display additional information corresponding to the media representation; and in response to detecting the request to display additional information corresponding to the media representation: based on determining that the detected text in the media representation has a first set of attributes, displaying a first user interface object via the display generation component, the first user interface object causing the computer system to perform a first operation based on the detected text when selected; and based on determining that the detected text in the media representation has a second set of attributes different from the first set of attributes, displaying a second user interface object via the display generation component, the second user interface object causing the computer system to perform a second operation different from the first operation based on the detected text when selected.
[0039] According to some embodiments, a non-transitory computer-readable storage medium is described. The non-transitory computer storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, and the one or more programs include instructions for the following operations: when displaying a user interface including a media representation, detecting a request to display additional information corresponding to the media representation; and in response to detecting the request to display additional information corresponding to the media representation: based on determining that the detected text in the media representation has a first set of attributes, displaying a first user interface object via the display generation component, the first user interface object causing the computer system to perform a first operation based on the detected text when selected; and based on determining that the detected text in the media representation has a second set of attributes different from the first set of attributes, displaying a second user interface object via the display generation component, the second user interface object causing the computer system to perform a second operation different from the first operation based on the detected text when selected.
[0040] According to some embodiments, a transient computer-readable storage medium is described. The transient computer storage medium stores one or more programs configured to be executed by one or more processors of a computer system that communicates with a display generation component, and the one or more programs include instructions for the following operations: when displaying a user interface including a media representation, detecting a request to display additional information corresponding to the media representation; and in response to detecting the request to display additional information corresponding to the media representation: based on determining that the detected text in the media representation has a first set of attributes, displaying a first user interface object via the display generation component, the first user interface object causing the computer system to perform a first operation based on the detected text when selected; and based on determining that the detected text in the media representation has a second set of attributes different from the first set of attributes, displaying a second user interface object via the display generation component, the second user interface object causing the computer system to perform a second operation different from the first operation based on the detected text when selected.
[0041] According to some embodiments, a computer system is described. The computer system is configured to communicate with a display generation component, and the computer system includes: one or more processors; and a memory, the memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for the following operations: when displaying a user interface including a media representation, detecting a request to display additional information corresponding to the media representation; and in response to detecting the request to display additional information corresponding to the media representation: based on determining that the detected text in the media representation has a first set of attributes, displaying a first user interface object via the display generation component, the first user interface object causing the computer system to perform a first operation based on the detected text when selected; and based on determining that the detected text in the media representation has a second set of attributes different from the first set of attributes, displaying a second user interface object via the display generation component, the second user interface object causing the computer system to perform a second operation different from the first operation based on the detected text when selected.
[0042] According to some embodiments, a computer system is described. The computer system is configured to communicate with a display generation component, and the computer system includes: a device for detecting a request to display additional information corresponding to a media representation when a user interface including a media representation is displayed; and a device for the following operations in response to detecting the request to display additional information corresponding to the media representation: based on determining that the detected text in the media representation has a first set of attributes, displaying a first user interface object via the display generation component, the first user interface object causing the computer system to perform a first operation based on the detected text when selected; and based on determining that the detected text in the media representation has a second set of attributes different from the first set of attributes, displaying a second user interface object via the display generation component, the second user interface object causing the computer system to perform a second operation different from the first operation based on the detected text when selected.
[0043] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to be executed by one or more processors of a computer system in communication with a generating component, and the one or more programs include instructions for the following operations: when displaying a user interface including a media representation, detecting a request to display additional information corresponding to the media representation; and in response to detecting the request to display additional information corresponding to the media representation: based on determining that the detected text in the media representation has a first set of attributes, displaying a first user interface object via the display generating component, the first user interface object causing the computer system to perform a first operation based on the detected text when selected; and based on determining that the detected text in the media representation has a second set of attributes different from the first set of attributes, displaying a second user interface object via the display generating component, the second user interface object causing the computer system to perform a second operation different from the first operation based on the detected text when selected.
[0044] Executable instructions for performing these functions are optionally included in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more processors. Executable instructions for performing these functions are optionally included in a transient computer-readable storage medium or other computer program product configured for execution by one or more processors.
[0045] Thus, devices are provided with faster, more efficient methods and interfaces for managing visual content in media, thereby increasing the effectiveness, efficiency, and user satisfaction of such devices.Such methods and interfaces may supplement or replace other methods for managing visual content in media. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] For a better understanding of the various described embodiments, reference should be made to the following detailed description taken in conjunction with the following drawings, wherein like reference numerals designate corresponding parts throughout the several views.
[0047] Figure 1A is a block diagram showing a portable multifunction device with a touch-sensitive display according to some embodiments.
[0048] Figure 1B is a block diagram illustrating example components for event processing according to some embodiments.
[0049] Figure 2 A portable multifunction device with a touch screen according to some embodiments is shown.
[0050] Figure 3 is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface according to some embodiments.
[0051] Figure 4A An exemplary user interface for a menu of applications on a portable multifunction device is shown according to some embodiments.
[0052] Figure 4B An exemplary user interface is shown for a multifunction device having a touch-sensitive surface that is separate from the display according to some embodiments.
[0053] Figure 5A A personal electronic device according to some embodiments is shown.
[0054] Figure 5B is a block diagram illustrating a personal electronic device according to some embodiments.
[0055] Figures 6A to 6Z An exemplary user interface for managing visual content in media is shown according to some embodiments.
[0056] FIG. 7A to FIG. 7L An exemplary user interface for managing visual indicators of visual content in media is shown according to some embodiments.
[0057] Figure 8 is a flow chart illustrating a method for managing visual content in media according to some embodiments.
[0058] Fig. 9 is a flow diagram illustrating visual indicators for managing visual content in media according to some embodiments.
[0059] FIG. 10A to FIG. 10AD An exemplary user interface for inserting visual content in media is shown according to some embodiments.
[0060] Fig.11 is a flow diagram illustrating a user interface for inserting visual content in media according to some embodiments.
[0061] FIG. 12A to FIG. 12L An exemplary user interface for identifying visual content in media is shown according to some embodiments.
[0062] Fig.13 is a flowchart illustrating a method for identifying visual content in media according to some embodiments.
[0063] FIG. 14A to FIG. 14N An exemplary user interface for transforming visual content in media is shown according to some embodiments.
[0064] Fig.15 is a flow chart illustrating a method for transforming visual content in media according to some embodiments.
[0065] FIG. 16A to FIG. 16O An exemplary user interface of user interface objects for managing visual content in media is shown according to some embodiments.
[0066] Fig.17 is a flowchart illustrating a method for managing user interface objects for visual content in media according to some embodiments. DETAILED DESCRIPTION
[0067] The following description sets forth exemplary methods, parameters, etc. However, it should be appreciated that such description is not intended to limit the scope of the present disclosure, but is provided as a description of exemplary embodiments.
[0068] There is a need for electronic devices to provide efficient methods and interfaces for managing visual content. For example, there is a need for electronic devices and / or computer systems to allow users to manage visual content included in objects captured by one or more cameras of a computer system, such as a sign or a restaurant menu. Such techniques can reduce the cognitive burden on users who manage visual content, thereby increasing productivity. In addition, such techniques can reduce processor power and battery power that would otherwise be wasted on redundant user input.
[0069] under Figure 1A to Figure 1B , Figure 2 , Figure 3 , FIG. 4A to FIG. 4B and FIG. 5A to FIG. 5B A description of an exemplary device for performing techniques for managing visual content is provided.
[0070] Figures 6A to 6Z An exemplary user interface for managing visual content in media is shown. Figure 8 is a flow chart illustrating a method of managing visual content according to some embodiments. Figures 6A to 6Z The user interface in the figure is used to illustrate the process described below, including Figure 8 process.
[0071] FIG. 7A to FIG. 7L An exemplary user interface for managing visual indicators of visual content in media is shown. Fig. 9 is a flow chart illustrating a method of managing visual indicators of visual content in media according to some embodiments. FIG. 7A to FIG. 7L The user interface in the figure is used to illustrate the process described below, including Fig. 9 process.
[0072] FIG. 10A to FIG. 10AD An exemplary user interface for inserting visual content in media is shown. Fig.11 is a flow chart illustrating a method of inserting visual content in media. FIG. 10A to FIG. 10ADThe user interface in is used to illustrate the process described below, including Fig.11 process.
[0073] FIG. 12A to FIG. 12L An exemplary user interface for identifying visual content in media is shown. Fig.13 is a flow chart illustrating a method of identifying visual content in media. FIG. 12A to FIG. 12L The user interface in the figure is used to illustrate the process described below, including Fig.13 process.
[0074] FIG. 14A to FIG. 14N An exemplary user interface for transforming visual content in media is shown. Fig.15 is a flow chart illustrating a method of transforming visual content in media according to some embodiments. FIG. 14A to FIG. 14N The user interface in the figure is used to illustrate the process described below, including Fig.15 process.
[0075] FIG. 16A to FIG. 16O An exemplary user interface of user interface objects for managing visual content in media is shown according to some embodiments. Fig.17 is a flowchart illustrating a method for managing user interface objects for visual content in media according to some embodiments. FIG. 16A to FIG. 16O The user interface in the figure is used to illustrate the process described below, including Fig.17 process.
[0076] The processes described below enhance the operability of the device and make the user-device interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the device) through various techniques, including by providing improved visual feedback to the user, reducing the number of inputs required to perform an operation, providing additional control options without cluttering the user interface with additional display controls, performing an operation without further user input when a set of conditions have been met, and / or additional techniques. These techniques also reduce power usage and extend the battery life of the device by enabling the user to use the device more quickly and more efficiently.
[0077] In addition, in the method described herein where one or more steps depend on one or more conditions being met, it should be understood that the method can be repeated in multiple repetitions so that in the process of repetition, all conditions for determining the steps in the method have been met in different repetitions of the method. For example, if the method needs to perform the first step (if the condition is met), and perform the second step (if the condition is not met), then the ordinary technician will know that the steps stated are repeated until both the condition is met and the condition is not met (in no particular order). Therefore, the method described as having one or more steps depending on one or more conditions being met can be rewritten as a method of repeating until each condition described in the method is met. However, this does not require the system or computer-readable medium to declare that the system or computer-readable medium contains instructions for performing a contingent operation based on the satisfaction of the corresponding one or more conditions, and is therefore able to determine whether the possible situation has been met without explicitly repeating the steps of the method until all conditions for determining the steps in the method have been met. It will also be understood by ordinary technicians in the art that, similar to the method with the contingent step, the system or computer-readable storage medium can repeat the steps of the method as many times as needed to ensure that all the contingent steps have been performed.
[0078] Although the following description uses the terms "first", "second", etc. to describe various elements, these elements should not be limited by the terms. These terms are only used to distinguish one element from another element. For example, a first touch can be named a second touch and similarly a second touch can be named a first touch without departing from the scope of the various described embodiments. Both the first touch and the second touch are touches, but they are not the same touch.
[0079] The terms used in the description of various described embodiments in this article are only for the purpose of describing specific embodiments, and are not intended to be limited. As used in the description of various described embodiments and in the appended claims, the singular forms "one" and "the" are intended to also include plural forms, unless the context clearly indicates otherwise. It will also be understood that the term "and / or" used herein refers to and encompasses any and all possible combinations of one or more items in the associated listed items. It will also be understood that the terms "including" and / or "comprising" are used in this specification to specify the presence of stated features, integers, steps, operations, elements and / or parts, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, parts and / or their grouping.
[0080] The term "if" is optionally interpreted to mean "when," "upon," or "in response to determining," or "in response to detecting," depending on the context. Similarly, the phrases "if it is determined that ..." or "if [a stated condition or event] is detected" are optionally interpreted to mean "upon determining that ..." or "in response to determining that ..." or "upon detecting [a stated condition or event]," or "in response to detecting [a stated condition or event]," depending on the context.
[0081] Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described herein. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions, such as a PDA and / or a music player function. Exemplary embodiments of portable multifunction devices include, but are not limited to, the Apple Watch from Apple Inc. (Cupertino, California). Devices, iPod Equipment, and Device. Optionally use other portable electronic devices, such as laptops or tablet computers with touch-sensitive surfaces (e.g., touch screen displays and / or touch pads). It should also be understood that in some embodiments, the device is not a portable communication device, but a desktop computer with a touch-sensitive surface (e.g., touch screen displays and / or touch pads). In some embodiments, the electronic device is a computer system that communicates with the display generation component (e.g., via wireless communication, via wired communication). The display generation component is configured to provide visual output, such as display via a CRT display, display via an LED display, or display via image projection. In some embodiments, the display generation component is integrated with the computer system. In some embodiments, the display generation component is separated from the computer system. As used herein, "display" content includes transmitting data (e.g., image data or video data) to an integrated or external display generation component via a wired or wireless connection to visually generate content to display content (e.g., video data rendered or decoded by display controller 156).
[0082] In the following discussion, an electronic device including a display and a touch-sensitive surface is described. However, it should be understood that the electronic device optionally includes one or more other physical user interface devices, such as a physical keyboard, mouse and / or joystick.
[0083] The device typically supports a variety of applications, such as one or more of the following: a drawing application, a presentation application, a word processing application, a website creation application, a disk editing application, a spreadsheet application, a gaming application, a telephony application, a video conferencing application, an email application, an instant messaging application, a fitness support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and / or a digital video player application.
[0084] Various applications executed on the device optionally use at least one common physical user interface device, such as a touch-sensitive surface. One or more functions of the touch-sensitive surface and corresponding information displayed on the device are optionally adjusted and / or varied for different applications, and / or adjusted and / or varied within the respective applications. In this way, the common physical architecture of the device (such as a touch-sensitive surface) optionally supports a variety of applications with a user interface that is intuitive and clear to the user.
[0085] Attention is now turned to embodiments of portable devices having touch-sensitive displays. Figure 1A is a block diagram showing a portable multifunction device 100 with a touch-sensitive display system 112 according to some embodiments. The touch-sensitive display 112 is sometimes referred to as a "touch screen" for convenience, and is sometimes referred to as or referred to as a "touch-sensitive display system." The device 100 includes a memory 102 (which optionally includes one or more computer-readable storage media), a memory controller 122, one or more processing units (CPUs) 120, a peripheral device interface 118, an RF circuit 108, an audio circuit 110, a speaker 111, a microphone 113, an input / output (I / O) subsystem 106, other input control devices 116, and an external port 124. The device 100 optionally includes one or more optical sensors 164. The device 100 optionally includes one or more contact force sensors 165 for detecting the intensity of contact on the device 100 (e.g., a touch-sensitive surface, such as the touch-sensitive display system 112 of the device 100). Device 100 optionally includes one or more tactile output generators 167 for generating tactile output on device 100 (e.g., generating tactile output on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touch pad 355 of device 300). These components optionally communicate via one or more communication buses or signal lines 103.
[0086] As used in this specification and claims, the term "intensity" of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch-sensitive surface, or to a surrogate (surrogate) of the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values that includes at least four different values and more typically includes hundreds of different values (e.g., at least 256). The intensity of a contact is optionally determined (or measured) using various methods and various sensors or combinations of sensors. For example, one or more force sensors below or adjacent to the touch-sensitive surface are optionally used to measure the force at different points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted average) to determine an estimated contact force. Similarly, the pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size of the contact area detected on the touch-sensitive surface and / or its change, the capacitance of the touch-sensitive surface near the contact and / or its change, and / or the resistance of the touch-sensitive surface near the contact and / or its change are optionally used as a substitute for the force or pressure of the contact on the touch-sensitive surface. In some embodiments, the substitute measurement of the contact force or pressure is used directly to determine whether the intensity threshold has been exceeded (e.g., the intensity threshold is described in units corresponding to the substitute measurement). In some embodiments, the substitute measurement of the contact force or pressure is converted into an estimated force or pressure, and the estimated force or pressure is used to determine whether the intensity threshold has been exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). Using the intensity of the contact as an attribute of the user input allows the user to access additional device functions that would otherwise be inaccessible to the user on a smaller device with limited real estate, which is used to display an enable indication (e.g., on a touch-sensitive display) and / or receive user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical controls, such as knobs or buttons).
[0087] As used in this specification and claims, the term "tactile output" refers to a physical displacement of a device relative to a previous position of the device, a physical displacement of a component of the device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to the center of mass of the device, which will be detected by a user using the user's sense of touch. For example, in the case where a device or a component of the device is in contact with a user's touch-sensitive surface (e.g., a finger, palm, or other part of the user's hand), the tactile output generated by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in a physical characteristic of the device or 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 "press click" or "release click" to a physical actuation button. In some cases, the user will feel a tactile sensation, such as a "press click" or "release click", even when the physical actuation button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user's movement does not move. As another example, even when there is no change in the smoothness of the touch-sensitive surface, movement of the touch-sensitive surface may optionally be interpreted or sensed by the user as "roughness" of the touch-sensitive surface. Although such a user's interpretation of touch will be limited by the user's individualized sensory perceptions, many sensory perceptions of touch are common to most users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., "press click," "release click," "roughness"), unless otherwise stated, the generated tactile output corresponds to a physical displacement of the device or a component thereof that would generate that sensory perception for a typical (or average) user.
[0088] It should be understood that device 100 is merely one example of a portable multifunction device, and that device 100 optionally has more or fewer components than shown, optionally combines two or more components, or optionally has a different configuration or arrangement of the components. Figure 1A The various components shown in the EMBODIMENTS 2000 are implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application specific integrated circuits.
[0089] Memory 102 optionally includes high-speed random access memory, and optionally also includes non-volatile memory, such as one or more disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Memory controller 122 optionally controls other components of device 100 to access memory 102.
[0090] The peripheral device interface 118 can be used to couple the input peripheral devices and output peripheral devices of the device to the CPU 120 and the memory 102. The one or more processors 120 run or execute various software programs and / or instruction sets stored in the memory 102 to perform various functions of the device 100 and process data. In some embodiments, the peripheral device interface 118, the CPU 120, and the memory controller 122 are optionally implemented on a single chip such as the chip 104. In some other embodiments, they are optionally implemented on separate chips.
[0091] RF (radio frequency) circuit 108 receives and sends RF signals, also referred to as electromagnetic signals. RF circuit 108 converts electrical signals into / converts electromagnetic signals into electrical signals, and communicates with communication networks and other communication devices via electromagnetic signals. RF circuit 108 optionally includes well-known circuits for performing these functions, including but not limited to antenna systems, RF transceivers, one or more amplifiers, tuners, one or more oscillators, digital signal processors, codec chipsets, user identity modules (SIM) cards, memories, and the like. RF circuit 108 optionally communicates with networks and other devices via wireless communications, such as the Internet (also referred to as the World Wide Web (WWW)), intranets, and / or wireless networks (such as cellular telephone networks, wireless local area networks (LANs), and / or metropolitan area networks (MANs)). RF circuit 108 optionally includes well-known circuits for detecting near field communications (NFC) fields, such as through short-range communications radio components. Wireless communication optionally uses any of a variety of communication 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.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11d), IEEE 802.11e, IEEE 802.11f, IEEE 802.11g, IEEE 802.11g). 802.11n and / or IEEE 802.11ac), Voice over Internet Protocol (VoIP), Wi-MAX, email protocols (e.g., Internet Message Access Protocol (IMAP) and / or Post Office Protocol (POP)), instant messaging (e.g., Extensible Messaging and Presence Protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Utilizing Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS)), and / or Short Message Service (SMS), or any other suitable communication protocol including communication protocols that have not been developed as of the filing date of this document.
[0092] The audio circuit 110, speaker 111, and microphone 113 provide an audio interface between a user and the device 100. The audio circuit 110 receives audio data from the peripheral device interface 118, converts the audio data into electrical signals, and transmits the electrical signals to the speaker 111. The speaker 111 converts the electrical signals into sound waves audible to humans. The audio circuit 110 also receives electrical signals converted from sound waves by the microphone 113. The audio circuit 110 converts the electrical signals into audio data and transmits the audio data to the peripheral device interface 118 for processing. The audio data is optionally retrieved from and / or transmitted to the memory 102 and / or the RF circuit 108 by the peripheral device interface 118. In some embodiments, the audio circuit 110 also includes a headset jack (e.g., Figure 2 The headset jack provides an interface between the audio circuit 110 and a removable audio input / output peripheral device, such as an output-only headset or a headset having both output (e.g., a single or dual-ear headset) and input (e.g., a microphone).
[0093] The I / O subsystem 106 couples input / output peripherals on the device 100, such as a touch screen 112 and other input control devices 116, to a peripheral device interface 118. The I / O subsystem 106 optionally includes a display controller 156, an optical sensor controller 158, a depth camera controller 169, an intensity sensor controller 159, a tactile feedback controller 161, and one or more input controllers 160 for other input or control devices. The one or more input controllers 160 receive / send electrical signals from other input control devices 116. The other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slide switches, joysticks, click wheels, etc. In some embodiments, the input controller 160 is optionally coupled to any of the following (or none of the following): a keyboard, an infrared port, a USB port, and a pointing device such as a mouse. One or more buttons (e.g., Figure 2 208) optionally includes an increase / decrease button for volume control of the speaker 111 and / or the microphone 113. The one or more buttons optionally include a push button (e.g., Figure 2206 in). In some embodiments, the electronic device is a computer system that communicates with one or more input devices (e.g., via wireless communication, via wired communication). In some embodiments, the one or more input devices include a touch-sensitive surface (e.g., a touchpad as part of a touch-sensitive display). In some embodiments, the one or more input devices include one or more camera sensors (e.g., one or more optical sensors 164 and / or one or more depth camera sensors 175), such as for tracking a user's gestures (e.g., hand gestures) 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.
[0094] A quick press of the push button optionally disengages the lock of the touch screen 112 or optionally begins the process of unlocking the device using gestures on the touch screen, as described in U.S. Patent Application 11 / 322,549, filed on December 23, 2005, entitled "Unlocking a Device by Performing Gestures on an Unlock Image" (i.e., U.S. Patent No. 7,657,849), which is hereby incorporated by reference in its entirety. A long press of the push button (e.g., 206) optionally turns the device 100 on or off. The functions of one or more buttons are optionally user-customizable. The touch screen 112 is used to implement virtual buttons or soft buttons and one or more soft keyboards.
[0095] The touch-sensitive display 112 provides an input interface and an output interface between the device and the user. The display controller 156 receives electrical signals from the touch screen 112 and / or sends electrical signals to the touch screen 112. The touch screen 112 displays visual output to the user. The visual output optionally includes graphics, text, icons, videos, and any combination thereof (collectively referred to as "graphics"). In some embodiments, some or all of the visual output optionally corresponds to user interface objects.
[0096] The touch screen 112 has a touch-sensitive surface, sensor, or sensor group that accepts input from a user based on tactile and / or haptic contact. The touch screen 112 and display controller 156 (together with any associated modules and / or instruction sets in memory 102) detect contact on the touch screen 112 (and any movement or interruption of the contact) and convert the detected contact into interaction with a user interface object (e.g., one or more soft keys, icons, web pages, or images) displayed on the touch screen 112. In an exemplary embodiment, the point of contact between the touch screen 112 and the user corresponds to a finger of the user.
[0097] The touch screen 112 optionally uses LCD (liquid crystal display) technology, LPD (light emitting polymer display) technology, or LED (light emitting diode) technology, although other display technologies are used in other embodiments. The touch screen 112 and display controller 156 optionally use any of a variety of touch sensing technologies now known or later developed, including but not limited to capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with the touch screen 112 to detect contact and any movement or interruption thereof. In an exemplary embodiment, projected mutual capacitance sensing technology is used, such as in the Apple ® from Apple Inc. (Cupertino, California). and iPod The technology used in.
[0098] The touch-sensitive display in some embodiments of touch screen 112 is optionally similar to the multi-touch-sensitive touchpad described in the following U.S. Patents: 6,323,846 (Westerman et al.), 6,570,557 (Westerman et al.), and / or 6,677,932 (Westerman et al.), and / or U.S. Patent Publication 2002 / 0015024A1, each of which is hereby incorporated by reference in its entirety. However, touch screen 112 displays visual output from device 100, while a touch-sensitive touchpad does not provide visual output.
[0099] The touch-sensitive display in some embodiments of the touch screen 112 is described in the following applications: (1) U.S. patent application No. 11 / 381,313, filed on May 2, 2006, "Multipoint Touch Surface Controller"; (2) U.S. patent application No. 10 / 840,862, filed on May 6, 2004, "Multipoint Touchscreen"; (3) U.S. patent application No. 10 / 903,964, filed on July 30, 2004, "Gestures For Touch Sensitive Input Devices"; (4) U.S. patent application No. 11 / 048,264, filed on January 31, 2005, "Gestures For Touch Sensitive Input Devices"; (5) U.S. patent application No. 11 / 038,590, filed on January 18, 2005, "Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices”; (6) U.S. patent application Ser. No. 11 / 228,758, filed on September 16, 2005, “Virtual Input Device Placement On A Touch Screen User Interface”; (7) U.S. patent application Ser. No. 11 / 228,700, filed on September 16, 2005, “Operation Of A Computer With A Touch Screen Interface”; (8) U.S. patent application Ser. No. 11 / 228,737, filed on September 16, 2005, “Activating Virtual Keys Of A Touch-Screen Virtual Keyboard”; and (9) U.S. patent application Ser. No. 11 / 367,749, filed on March 3, 2006, “Multi-Functional Hand-Held Device”. All of these applications are incorporated herein by reference in their entirety.
[0100] The touch screen 112 optionally has a video resolution of more than 100 dpi. In some embodiments, the touch screen has a video resolution of about 160 dpi. The user optionally uses any suitable object or attachment such as a stylus, a finger, etc. to contact the touch screen 112. In some embodiments, the user interface is designed to work primarily through finger-based contacts and gestures, which may not be as accurate as stylus-based input due to the larger contact area of the finger on the touch screen. In some embodiments, the device converts rough finger-based input into precise pointer / cursor positions or commands for performing the actions desired by the user.
[0101] In some embodiments, in addition to the touch screen, the device 100 optionally includes a touchpad for activating or deactivating specific functions. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike the touch screen, does not display visual output. The touchpad is optionally a touch-sensitive surface that is separate from the touch screen 112 or is an extension of the touch-sensitive surface formed by the touch screen.
[0102] The device 100 also includes a power system 162 for powering the various components. The power system 162 optionally includes a power management system, one or more power sources (e.g., batteries, alternating current (AC)), a recharging system, a power fault detection circuit, a power converter or inverter, a power status indicator (e.g., a light emitting diode (LED)), and any other components associated with the generation, management, and distribution of power in a portable device.
[0103] Device 100 optionally also includes one or more optical sensors 164 . Figure 1AAn optical sensor coupled to an optical sensor controller 158 in the I / O subsystem 106 is shown. The optical sensor 164 optionally includes a charge coupled device (CCD) or a complementary metal oxide semiconductor (CMOS) phototransistor. The optical sensor 164 receives light projected through one or more lenses from the environment and converts the light into data representing an image. In conjunction with the imaging module 143 (also called a camera module), the optical sensor 164 optionally captures a static image or video. In some embodiments, the optical sensor is located on the rear of the device 100, opposite to the touch screen display 112 on the front of the device, so that the touch screen display can be used as a viewfinder for static images and / or video image acquisition. In some embodiments, the optical sensor is located on the front of the device so that the user's image is optionally obtained for video conferencing while the user views other video conference participants on the touch screen display. In some embodiments, the position of the optical sensor 164 can be changed by the user (e.g., by rotating the lens and sensor in the device housing) so that a single optical sensor 164 is used with the touch screen display for both video conferencing and static image and / or video image acquisition.
[0104] Device 100 optionally also includes one or more depth camera sensors 175 . Figure 1A A depth camera sensor coupled to a depth camera controller 169 in the I / O subsystem 106 is shown. The depth camera sensor 175 receives data from the environment to create a three-dimensional model of an object (e.g., a face) within the scene from a viewpoint (e.g., a depth camera sensor). In some embodiments, in conjunction with the imaging module 143 (also referred to as a camera module), the depth camera sensor 175 is optionally used to determine a depth map of different portions of an image captured by the imaging module 143. In some embodiments, the depth camera sensor is located at the front of the device 100, so that an image of the user with depth information is optionally obtained for video conferencing while the user is viewing other video conference participants on the touch screen display, and a selfie with depth map data is captured. In some embodiments, the depth camera sensor 175 is located at the rear of the device, or at both the rear and front of the device 100. In some embodiments, the position of the depth camera sensor 175 can be changed by the user (e.g., by rotating the lens and sensor in the device housing) so that the depth camera sensor 175 is used with the touch screen display for both video conferencing and still image and / or video image acquisition.
[0105] Device 100 optionally also includes one or more contact intensity sensors 165 . Figure 1AA contact force sensor is shown coupled to a force sensor controller 159 in the I / O subsystem 106. Contact force sensor 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electrical force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other force sensors (e.g., sensors for measuring the force (or pressure) of contact on a touch-sensitive surface). Contact force sensor 165 receives contact force information (e.g., pressure information or a surrogate for pressure information) from the environment. In some embodiments, at least one contact force sensor is juxtaposed or adjacent to a touch-sensitive surface (e.g., touch-sensitive display system 112). In some embodiments, at least one contact force sensor is located on the back of device 100, opposite to touch screen display 112 located on the front of device 100.
[0106] Device 100 optionally also includes one or more proximity sensors 166 . Figure 1A A proximity sensor 166 is shown coupled to the peripherals interface 118. Alternatively, the proximity sensor 166 is optionally coupled to the input controller 160 in the I / O subsystem 106. The proximity sensor 166 is optionally implemented as described in the following U.S. patent application numbers: 11 / 241,839, entitled "Proximity Detector In Handheld Device"; 11 / 240,788, entitled "Proximity Detector In Handheld Device"; 11 / 620,702, entitled "Using Ambient Light Sensor To Augment Proximity Sensor Output"; 11 / 586,862, entitled "Automated Response To And Sensing Of User Activity In Portable Devices"; and 11 / 638,251, entitled "Methods And Systems For Automatic Configuration Of Peripherals", which are hereby incorporated by reference in their entirety. In some embodiments, when the multifunction device is placed near the user's ear (e.g., when the user is on a phone call), the proximity sensor turns off and disables the touch screen 112.
[0107] Device 100 optionally also includes one or more tactile output generators 167 . Figure 1AA tactile output generator is shown coupled to a tactile feedback controller 161 in the I / O subsystem 106. The tactile output generator 167 optionally includes one or more electroacoustic devices such as a speaker or other audio component; and / or an electromechanical device for converting energy into linear motion such as a motor, solenoid, electroactive polymer, piezoelectric actuator, electrostatic actuator, or other tactile output generating component (e.g., a component for converting an electrical signal into a tactile output on the device). The contact force sensor 165 receives tactile feedback generation instructions from the tactile feedback module 133 and generates a tactile output on the device 100 that can be felt by a user of the device 100. In some embodiments, at least one tactile output generator is arranged in parallel or adjacent to a touch-sensitive surface (e.g., a touch-sensitive display system 112) and optionally generates a tactile output by moving the touch-sensitive surface vertically (e.g., inward / outward of the surface of the device 100) or laterally (e.g., backward and forward in the same plane as the surface of the device 100). In some embodiments, at least one tactile output generator sensor is located on the back of the device 100, opposite the touch screen display 112 located on the front of the device 100.
[0108] Device 100 optionally also includes one or more accelerometers 168 . Figure 1A An accelerometer 168 is shown coupled to the peripheral device interface 118. Alternatively, the accelerometer 168 is optionally coupled to the input controller 160 in the I / O subsystem 106. The accelerometer 168 is optionally implemented as described in the following U.S. Patent Publication Nos.: 20050190059, entitled "Acceleration-based Theft Detection System for Portable Electronic Devices" and 20060017692, entitled "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer", both of which are incorporated herein by reference in their entirety. In some embodiments, information is displayed in a portrait view or a landscape view on the touch screen display based on analysis of data received from one or more accelerometers. The device 100 optionally includes a magnetometer and a GPS (or GLONASS or other global navigation system) receiver in addition to the accelerometer 168 for obtaining information about the position and orientation (e.g., portrait or landscape) of the device 100.
[0109] In some embodiments, the software components stored in memory 102 include an operating system 126, a communication module (or instruction set) 128, a contact / motion module (or instruction set) 130, a graphics module (or instruction set) 132, a text input module (or instruction set) 134, a global positioning system (GPS) module (or instruction set) 135, and an application (or instruction set) 136. In addition, in some embodiments, memory 102 ( Figure 1A ) or 370( Figure 3 ) storage device / global internal state 157, such as Figure 1A and Figure 3 . The device / global internal state 157 includes one or more of the following: active application state, which indicates which applications (if any) are currently active; display state, which indicates what applications, views, or other information occupy various areas of the touch screen display 112; sensor state, including information obtained from the device's various sensors and input control devices 116; and position information related to the device's position and / or posture.
[0110] The operating system 126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, iOS, WINDOWS, or an embedded operating system such as VxWorks) includes various software components and / or drivers for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.), and facilitating communication between various hardware components and software components.
[0111] The communication module 128 facilitates communication with other devices through one or more external ports 124, and also includes various software components for processing data received by the RF circuit 108 and / or the external port 124. The external port 124 (e.g., Universal Serial Bus (USB), FireWire, etc.) is suitable for coupling directly to other devices, or indirectly through a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external port is connected to (trademark of Apple Inc.) devices.
[0112] The contact / motion module 130 optionally detects contact with the touch screen 112 (in conjunction with the display controller 156) and other touch-sensitive devices (e.g., a touchpad or physical click wheel). The contact / motion module 130 includes various software components for performing various operations related to contact detection, such as determining whether contact has occurred (e.g., detecting a finger press event), determining the contact strength (e.g., the force or pressure of the contact, or a substitute for the force or pressure of the contact), determining whether there is movement of the contact and tracking the movement on the touch-sensitive surface (e.g., detecting one or more finger drag events), and determining whether the contact has stopped (e.g., detecting a finger lift event or contact disconnection). The contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact point optionally includes determining the rate (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point, the movement of the contact point being represented by a series of contact data. These operations are optionally applied to a single point of contact (e.g., a single finger contact) or multiple points of simultaneous contact (e.g., "multi-touch" / multiple finger contacts). In some embodiments, the contact / motion module 130 and display controller 156 detect contact on the touch pad.
[0113] In some embodiments, the 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" an icon). In some embodiments, at least a subset of the intensity thresholds are determined based on software parameters (e.g., the intensity thresholds are not determined by the activation thresholds of specific physical actuators and can be adjusted without changing the physical hardware of the device 100). For example, without changing the touchpad or touchscreen display hardware, the mouse "click" threshold of a touchpad or touchscreen can be set to any one of a large range of predefined thresholds. In addition, in some specific implementations, a software setting is provided to the user of the device for adjusting one or more intensity thresholds in a set of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or by utilizing a system-level click on an "intensity" parameter to adjust multiple intensity thresholds at once).
[0114] The contact / motion module 130 optionally detects gesture input by the user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different motions, timings, and / or intensities of the detected contacts). Therefore, gestures are optionally detected by detecting specific contact patterns. For example, detecting a finger tap gesture includes detecting a finger press event, and then detecting a finger lift (lift-off) event at the same location (or substantially the same location) as the finger press event (e.g., at the location of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger press event, then detecting one or more finger drag events, and then detecting a finger lift (lift-off) event.
[0115] The graphics module 132 includes various known software components for rendering and displaying graphics on the touch screen 112 or other display, including components for changing the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual attributes) of the displayed graphics. As used herein, the term "graphics" includes any object that can be displayed to a user, including but not limited to text, web pages, icons (such as user interface objects including soft keys), digital images, videos, animations, etc.
[0116] In some embodiments, the graphics module 132 stores data representing graphics to be used. Each graphic is optionally assigned a corresponding code. The graphics module 132 receives one or more codes for specifying the graphics to be displayed from an application program, etc., and also receives coordinate data and other graphic attribute data together if necessary, and then generates screen image data to be output to the display controller 156.
[0117] Haptic feedback module 133 includes various software components for generating instructions used by tactile output generator 167 to produce tactile output at one or more locations on device 100 in response to user interaction with device 100 .
[0118] Text input module 134, which is optionally a component of graphics module 132, provides a soft keyboard for entering text in various applications (e.g., contacts 137, email 140, IM 141, browser 147, and any other application requiring text input).
[0119] The GPS module 135 determines the location of the device and provides this information for use in various applications (e.g., to the phone 138 for use in location-based dialing; to the camera 143 as picture / video metadata; and to applications that provide location-based services, such as a weather widget, a local yellow pages widget, and a map / navigation widget).
[0120] The application 136 optionally includes the following modules (or instruction sets) or a subset or superset thereof:
[0121] Contacts module 137 (sometimes called address book or contact list);
[0122] Telephone module 138;
[0123] Email client module 140;
[0124] Instant messaging (IM) module 141;
[0125] Fitness support module 142;
[0126] A camera module 143 for still images and / or video images;
[0127] Image management module 144;
[0128] Video player module;
[0129] Music player module;
[0130] Browser module 147;
[0131] Calendar module 148;
[0132] A widget module 149, which optionally includes one or more of the following: a weather widget 149-1, a stock market widget 149-2, a calculator widget 149-3, an alarm widget 149-4, a dictionary widget 149-5, and other widgets acquired by the user, and a user-created widget 149-6;
[0133] A widget creator module 150 for forming a user-created widget 149 - 6 ;
[0134] Search module 151;
[0135] Video and music player module 152, which merges the video player module and the music player module;
[0136] Note module 153;
[0137] Map module 154; and / or
[0138] Online video module 155.
[0139] Examples of other applications 136 optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, rendering applications, JAVA-enabled applications, encryption, digital rights management, voice recognition, and voice replication.
[0140] In conjunction with the touch screen 112, display controller 156, touch / motion module 130, graphics module 132, and text input module 134, the contact module 137 is optionally used to manage an address book or contact list (e.g., stored in the application internal state 192 of the contact module 137 in memory 102 or memory 370), including: adding one or more names to the address book; deleting names from the address book; associating phone numbers, email addresses, physical addresses, or other information with names; associating images with names; categorizing and classifying names; providing phone numbers or email addresses to initiate and / or facilitate communications via telephone 138, video conferencing module 139, email 140, or IM 141; and the like.
[0141] 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, phone module 138 is optionally used to enter a sequence of characters corresponding to a phone number, access one or more phone numbers in contact module 137, modify an entered phone number, dial a corresponding phone number, conduct a conversation, and disconnect or hang up when the conversation is complete. As described above, wireless communication optionally uses any of a variety of communication standards, protocols, and technologies.
[0142] In combination with the RF circuit 108, the audio circuit 110, the speaker 111, the microphone 113, the touch screen 112, the display controller 156, the optical sensor 164, the optical sensor controller 158, the contact / motion module 130, the graphics module 132, the text input module 134, the contact module 137 and the telephone module 138, the video conferencing module 139 includes executable instructions for initiating, conducting and terminating a video conference between a user and one or more other participants in accordance with user instructions.
[0143] In conjunction with RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, email client module 140 includes executable instructions for creating, sending, receiving, and managing emails in response to user instructions. In conjunction with image management module 144, email client module 140 makes it very easy to create and send emails with still images or video images captured by camera module 143.
[0144] In conjunction with RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, instant messaging module 141 includes executable instructions for the following operations: inputting a character sequence corresponding to an instant message, modifying previously input characters, transmitting a corresponding instant message (e.g., using a short message service (SMS) or multimedia message service (MMS) protocol for phone-based instant messaging or using XMPP, SIMPLE, or IMPS for Internet-based instant messaging), receiving instant messages, and viewing received instant messages. In some embodiments, the transmitted and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments supported in MMS and / or enhanced messaging services (EMS). As used herein, "instant messaging" refers to both phone-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).
[0145] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, the GPS module 135, the map module 154 and the music player module, the fitness support module 142 includes executable instructions for creating a fitness (e.g., with time, distance and / or calorie burn goals); communicating with fitness sensors (sports equipment); receiving fitness sensor data; calibrating sensors for monitoring fitness; selecting and playing music for fitness; and displaying, storing and transmitting fitness data.
[0146] In conjunction with the touch screen 112, display controller 156, optical sensor 164, optical sensor controller 158, contact / motion module 130, graphics module 132 and image management module 144, the camera module 143 includes executable instructions for the following operations: capturing still images or videos (including video streams) and storing them in the memory 102, modifying the characteristics of the still images or videos, or deleting the still images or videos from the memory 102.
[0147] In conjunction with touch screen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and camera module 143, image management module 144 includes executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, labeling, deleting, presenting (e.g., in a digital slideshow or album), and storing still images and / or video images.
[0148] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphics module 132 and the text input module 134, the browser module 147 includes executable instructions for browsing the Internet in accordance with user instructions, including searching, linking to, receiving and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.
[0149] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphics module 132, the text input module 134, the email client module 140 and the browser module 147, the calendar module 148 includes executable instructions for creating, displaying, modifying and storing calendars and data associated with the calendar (e.g., calendar entries, to-do items, etc.) in accordance with user instructions.
[0150] In conjunction with RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, and browser module 147, widget module 149 is a mini-application that is optionally downloaded and used by a user (e.g., weather widget 149-1, stock market widget 149-2, calculator widget 149-3, alarm widget 149-4, and dictionary widget 149-5) or a mini-application created by a user (e.g., user-created widget 149-6). In some embodiments, the widget includes an HTML (Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, the widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., Yahoo! widget).
[0151] In combination with the RF circuit 108, touch screen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134 and browser module 147, the widget creator module 150 is optionally used by a user to create widgets (e.g., converting a user-specified portion of a web page into a widget).
[0152] In combination with the touch screen 112, display controller 156, contact / motion module 130, graphics module 132 and text input module 134, the search module 151 includes executable instructions for searching the memory 102 for text, music, sound, images, videos and / or other files that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with user instructions.
[0153] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, video and music player module 152 includes executable instructions that allow a user to download and play back recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, and executable instructions for displaying, presenting, or otherwise playing back video (e.g., on touch screen 112 or on an external display connected via external port 124). In some embodiments, device 100 optionally includes the functionality of an MP3 player, such as an iPod (trademark of Apple Inc.).
[0154] In conjunction with the touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, the note module 153 includes executable instructions for creating and managing notes, to-do lists, etc. according to user instructions.
[0155] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphics module 132, the text input module 134, the GPS module 135 and the browser module 147, the map module 154 is optionally used to receive, display, modify and store maps and data associated with the maps (e.g., driving directions, data relating to stores and other points of interest at or near a particular location, and other location-based data) in accordance with user instructions.
[0156] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuit 110, speaker 111, RF circuit 108, text input module 134, email client module 140, and browser module 147, online video module 155 includes instructions for performing the following operations: allowing a user to access, browse, receive (e.g., by streaming and / or downloading), playback (e.g., on the touch screen or on an external display connected via external port 124), send an email with a link to a specific online video, and otherwise manage online videos in one or more file formats such as H.264. In some embodiments, instant messaging module 141 is used instead of email client module 140 to send a link to a specific online video. Additional descriptions of online video applications can be found in U.S. Provisional Patent Application No. 60 / 936,562, filed on June 20, 2007, entitled “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos,” and U.S. Patent Application No. 11 / 968,067, filed on December 31, 2007, entitled “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos,” the contents of which are hereby incorporated by reference in their entirety.
[0157] Each of the modules and applications described above corresponds to an executable instruction set for performing one or more of the functions described above and the methods described in this patent application (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., instruction sets) do not have to be implemented as independent software programs, processes, or modules, so various subsets of these modules are optionally combined or otherwise rearranged in various embodiments. For example, a video player module is optionally combined with a music player module into a single module (e.g., Figure 1A In some embodiments, the memory 102 optionally stores a subset of the above modules and data structures. In addition, the memory 102 optionally stores additional modules and data structures not described above.
[0158] In some embodiments, the device 100 is a device where the operation of a predefined set of functions on the device is performed exclusively through a touch screen and / or a touch pad. By using a touch screen and / or a touch pad as the primary input control device for operating the device 100, the number of physical input control devices (e.g., push buttons, dials, etc.) on the device 100 is optionally reduced.
[0159] A predefined set of functions that are performed exclusively through the touch screen and / or touchpad optionally includes navigation between user interfaces. In some embodiments, the touchpad, when touched by the user, navigates the device 100 to a main menu, a home menu, or a root menu from any user interface displayed on the device 100. In such embodiments, a "menu button" is implemented using the touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device, rather than a touchpad.
[0160] Figure 1B 1 is a block diagram illustrating exemplary components for event processing according to some embodiments. In some embodiments, memory 102 ( Figure 1A ) or memory 370( Figure 3 ) includes an event classifier 170 (e.g., in the operating system 126) and a corresponding application 136-1 (e.g., any one of the aforementioned applications 137 to 151, 155, 380 to 390).
[0161] Event classifier 170 receives event information and determines the application 136-1 and the application view 191 of application 136-1 to which the event information is to be delivered. Event classifier 170 includes event monitor 171 and event distributor module 174. In some embodiments, application 136-1 includes application internal state 192, which indicates one or more current application views displayed on touch-sensitive display 112 when the application is active or executing. In some embodiments, device / global internal state 157 is used by event classifier 170 to determine which application(s) is currently active, and application internal state 192 is used by event classifier 170 to determine the application view 191 to which the event information is to be delivered.
[0162] In some embodiments, the application internal state 192 includes additional information, such as one or more of the following: resumption information to be used when the application 136-1 resumes execution, user interface state information indicating that information is being displayed or is ready to be displayed by the application 136-1, a state queue for enabling a user to return to a previous state or view of the application 136-1, and a repeat / undo queue of previous actions taken by the user.
[0163] Event monitor 171 receives event information from peripherals interface 118. Event information includes information about sub-events (e.g., user touches on touch-sensitive display 112 as part of a multi-touch gesture). Peripherals interface 118 transmits information it receives from I / O subsystem 106 or sensors such as proximity sensor 166, one or more accelerometers 168, and / or microphone 113 (through audio circuit 110). The information that peripherals interface 118 receives from I / O subsystem 106 includes information from touch-sensitive display 112 or a touch-sensitive surface.
[0164] In some embodiments, event monitor 171 sends requests to peripheral device interface 118 at predetermined intervals. In response, peripheral device interface 118 transmits event information. In other embodiments, peripheral device interface 118 transmits event information only when there is a significant event (e.g., receiving an input above a predetermined noise threshold and / or receiving an input for more than a predetermined duration).
[0165] In some embodiments, the event classifier 170 also includes a hit view determination module 172 and / or an active event identifier determination module 173.
[0166] When the touch-sensitive display 112 displays more than one view, the hit view determination module 172 provides software procedures for determining where within one or more views a sub-event has occurred. A view consists of controls and other elements that a user can see on the display.
[0167] Another aspect of the user interface associated with an application is a set of views, sometimes also referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application views (of the respective application) in which a touch is detected optionally correspond to a programmatic level within the programmatic or view hierarchy of the application. For example, the lowest level view in which a touch is detected is optionally referred to as a hit view, and the set of events that are recognized as correct input is optionally determined at least in part based on the hit view of the initial touch that started the touch-based gesture.
[0168] Hit view determination module 172 receives information related to sub-events of touch-based gestures. When an application has multiple views organized in a hierarchy, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy where the sub-events should be processed. In most cases, the hit view is the lowest level view in which the initiating sub-event (e.g., the first sub-event in a sequence of sub-events that form an event or potential event) occurs. Once a hit view is identified by hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source for which it was identified as the hit view.
[0169] Active event recognizer determination module 173 determines which view or views within the view hierarchy should receive a particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, active event recognizer determination module 173 determines that all views that include the physical location of the sub-event are actively participating views, and therefore determines that all actively participating views should receive a particular sequence of sub-events. In other embodiments, even if a touch sub-event is completely confined to an area associated with one particular view, higher views in the hierarchy will still remain as actively participating views.
[0170] Event distributor module 174 distributes event information to event recognizers (e.g., event recognizers 180). In embodiments including active event recognizer determination module 173, event distributor module 174 delivers the event information to the event recognizers determined by active event recognizer determination module 173. In some embodiments, event distributor module 174 stores the event information in an event queue, which is retrieved by corresponding event receivers 182.
[0171] In some embodiments, operating system 126 includes event classifier 170. Alternatively, application 136-1 includes event classifier 170. In yet another embodiment, event classifier 170 is a standalone module or is part of another module stored in memory 102, such as contact / motion module 130.
[0172] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each of which includes instructions for handling touch events occurring within a corresponding view of the user interface of the application. Each application view 191 of application 136-1 includes one or more event recognizers 180. Typically, the corresponding application view 191 includes multiple event recognizers 180. In other embodiments, one or more event recognizers in event recognizers 180 are part of an independent module, which is a higher-level object such as a user interface toolkit or application 136-1 from which methods and other properties are inherited. In some embodiments, the corresponding event handler 190 includes one or more of the following: data updater 176, object updater 177, GUI updater 178, and / or event data 179 received from event classifier 170. Event handler 190 optionally utilizes or calls data updater 176, object updater 177, or GUI updater 178 to update application internal state 192. Alternatively, one or more of the application views in application view 191 include one or more corresponding event handlers 190. In addition, in some embodiments, one or more of data updater 176, object updater 177, and GUI updater 178 are included in the corresponding application view 191.
[0173] The corresponding event identifier 180 receives event information (e.g., event data 179) from the event classifier 170 and identifies the event based on the event information. The event identifier 180 includes an event receiver 182 and an event comparator 184. In some embodiments, the event identifier 180 also includes metadata 183 and at least a subset of event delivery instructions 188 (which optionally include sub-event delivery instructions).
[0174] Event receiver 182 receives event information from event classifier 170. Event information includes information about sub-events such as touch or touch movement. Depending on the sub-event, the event information also includes additional information, such as the location of the sub-event. When the sub-event involves the movement of the touch, the event information optionally also includes the speed and direction of the sub-event. In some embodiments, the event includes the device rotating from one orientation to another orientation (for example, from a longitudinal orientation to a transverse orientation, or vice versa), and the event information includes corresponding information about the current orientation of the device (also referred to as the device posture).
[0175] Event comparator 184 compares event information with predefined event or sub-event definitions, and determines an event or sub-event based on the comparison, or determines or updates the state of an event or sub-event. In some embodiments, event comparator 184 includes event definition 186. Event definition 186 includes the definition of an event (e.g., a predefined sequence of sub-events), such as event 1 (187-1), event 2 (187-2), and others. In some embodiments, sub-events in event (187) include, for example, touch start, touch end, touch move, touch cancel, and multi-touch. In one example, the definition of event 1 (187-1) is a double-click on a displayed object. For example, a double-click includes a first touch (touch start) of a predetermined duration on a displayed object, a first lift-off (touch end) of a predetermined duration, a second touch (touch start) of a predetermined duration on a displayed object, and a second lift-off (touch end) of a predetermined duration. In another example, the definition of event 2 (187-2) is a drag on a displayed object. For example, dragging includes a touch (or contact) of a predetermined duration on a displayed object, movement of the touch on the touch-sensitive display 112, and lifting of the touch (touch end). In some embodiments, the event also includes information for one or more associated event handlers 190.
[0176] In some embodiments, event definition 187 includes definitions of events for corresponding user interface objects. In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with a sub-event. For example, in an application view displaying three user interface objects on touch-sensitive display 112, when a touch is detected on touch-sensitive display 112, event comparator 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a corresponding event handler 190, the event comparator uses the result of the hit test to determine which event handler 190 should be activated. For example, event comparator 184 selects an event handler associated with a sub-event and the object that triggered the hit test.
[0177] In some embodiments, the definition of the corresponding event (187) also includes a delay action that delays the delivery of the event information until it has been determined that the sub-event sequence does or does not correspond to the event type of the event identifier.
[0178] When a corresponding event recognizer 180 determines that a sequence of sub-events does not match any event in event definition 186, the corresponding event recognizer 180 enters an event impossible, event failed, or event ended state, after which subsequent sub-events of the touch-based gesture are ignored. In this case, other event recognizers (if any) that remain active for the hit view continue to track and process sub-events of the ongoing touch-based gesture.
[0179] In some embodiments, the corresponding event recognizers 180 include metadata 183 with configurable properties, flags, and / or lists that indicate how the event delivery system should perform sub-event delivery to actively participating event recognizers. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how event recognizers interact or can interact with each other. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate whether sub-events are delivered to different levels in a view or programmatic hierarchy.
[0180] In some embodiments, when one or more specific sub-events of an event are identified, the corresponding event recognizer 180 activates an event handler 190 associated with the event. In some embodiments, the corresponding event recognizer 180 delivers event information associated with the event to the event handler 190. Activating the event handler 190 is different from sending (and deferred sending) the sub-events to the corresponding hit view. In some embodiments, the event recognizer 180 throws a tag associated with the identified event, and the event handler 190 associated with the tag obtains the tag and executes a predefined process.
[0181] In some embodiments, the event delivery instructions 188 include a sub-event delivery instruction that delivers event information about a sub-event without activating an event handler. Instead, the sub-event delivery instruction delivers the event information to an event handler associated with a sub-event sequence or to an actively participating view. The event handler associated with the sub-event sequence or with an actively participating view receives the event information and executes a predetermined process.
[0182] In some embodiments, data updater 176 creates and updates data used in application 136-1. For example, data updater 176 updates phone numbers used in contact module 137 or stores video files used in video player module. In some embodiments, object updater 177 creates and updates objects used in application 136-1. For example, object updater 177 creates new user interface objects or updates the position of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends the display information to graphics module 132 for display on a touch-sensitive display.
[0183] In some embodiments, event handler 190 includes or has access to data updater 176, object updater 177, and GUI updater 178. In some embodiments, data updater 176, object updater 177, and GUI updater 178 are included in a single module of the corresponding application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.
[0184] It should be understood that the above discussion of event processing for user touches on a touch-sensitive display also applies to other forms of user input that utilize input devices to operate the multifunction device 100, and not all user input is initiated on the touch screen. For example, mouse movement and mouse button presses, optionally in conjunction with single or multiple keyboard presses or hold; contact movement on a touch pad, such as tapping, dragging, scrolling, etc.; stylus input; movement of the device; verbal commands; detected eye movement; biometric input; and / or any combination thereof are optionally used as input corresponding to sub-events that define the event to be distinguished.
[0185] Figure 2A portable multifunction device 100 with a touch screen 112 according to some embodiments is shown. The touch screen optionally displays one or more graphics within a user interface (UI) 200. In this embodiment and other embodiments described below, a user can select one or more of these graphics by, for example, making gestures on the graphics using one or more fingers 202 (not drawn to scale in the figure) or one or more styluses 203 (not drawn to scale in the figure). In some embodiments, when the user interrupts contact with one or more graphics, selection of one or more graphics will occur. In some embodiments, gestures optionally include one or more taps, one or more swipes (from left to right, from right to left, up and / or down) and / or rolling of fingers that have been in contact with the device 100 (from right to left, from left to right, up and / or down). In some specific implementations or in some cases, inadvertent contact with a graphic will not select the graphic. For example, when the gesture corresponding to the selection is a tap, a swipe gesture that sweeps over an application icon optionally does not select the corresponding application.
[0186] The device 100 optionally also includes one or more physical buttons, such as a "home" or menu button 204. As previously described, the menu button 204 is optionally used to navigate to any application 136 in a set of applications that are optionally executed on the device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on the touch screen 112.
[0187] In some embodiments, the device 100 includes a touch screen 112, a menu button 204, a push button 206 for turning the device on / off and for locking the device, one or more volume adjustment buttons 208, a user identity module (SIM) card slot 210, an earphone jack 212, and a docking / charging external port 124. The push button 206 is optionally used to turn the device on / off by pressing the button and keeping the button in a pressed state for a predefined time interval; lock the device by pressing the button and releasing the button before the predefined time interval passes; and / or unlock the device or initiate an unlocking process. In an alternative embodiment, the device 100 also accepts voice input for activating or deactivating certain functions through a microphone 113. The device 100 also optionally includes one or more contact strength sensors 165 for detecting the strength of contact on the touch screen 112, and / or one or more tactile output generators 167 for generating tactile output for a user of the device 100.
[0188] Figure 3300 is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface according to some embodiments. The device 300 does not have to be portable. In some embodiments, the device 300 is a laptop, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a children's learning toy), a game system, or a control device (e.g., a home controller or an industrial controller). The device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, a memory 370, and one or more communication buses 320 for interconnecting these components. The communication bus 320 optionally includes circuits (sometimes referred to as a chipset) that interconnect system components and control communications between system components. The device 300 includes an input / output (I / O) interface 330 with a display 340, which is typically a touch screen display. The I / O interface 330 also optionally includes a keyboard and / or a mouse (or other pointing device) 350 and a touchpad 355, a tactile output generator 357 for generating tactile output on the device 300 (e.g., similar to the above reference Figure 1A The tactile output generator 167 described above), sensor 359 (e.g., optical sensor, acceleration sensor, proximity sensor, touch sensor and / or contact intensity sensor (similar to the above reference Figure 1A The memory 370 may include a high-speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access solid-state memory devices; and may optionally include a non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. The memory 370 may optionally include one or more storage devices located away from the CPU 310. In some embodiments, the memory 370 stores data related to the portable multifunction device 100 ( Figure 1A ) or a subset thereof. In addition, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunction device 100. For example, memory 370 of device 300 optionally stores a drawing module 380, a presentation module 382, a word processing module 384, a website creation module 386, a disk editing module 388, and / or a spreadsheet module 390, while portable multifunction device 100 ( Figure 1A )'s memory 102 optionally does not store these modules.
[0189] Figure 3Each element in the above-mentioned elements in is optionally stored in one or more memory devices of the previously mentioned memory device. Each module in the above-mentioned modules corresponds to the instruction set for performing the above-mentioned functions. The above-mentioned modules or programs (e.g., instruction sets) do not have to be implemented as independent software programs, processes or modules, and therefore the various subsets of these modules are optionally combined or otherwise rearranged in various embodiments. In some embodiments, memory 370 optionally stores the subset of the above-mentioned modules and data structures. In addition, memory 370 optionally stores additional modules and data structures not described above.
[0190] Attention is now turned to an embodiment of a user interface that is optionally implemented on, for example, portable multifunction device 100.
[0191] Figure 4A An exemplary user interface of an application menu on portable multifunction device 100 according to some embodiments is shown. A similar user interface is optionally implemented on device 300. In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof:
[0192] Signal strength indicators 402 for wireless communications such as cellular signals and Wi-Fi signals;
[0193] Time 404;
[0194] Bluetooth indicator 405;
[0195] Battery status indicator 406;
[0196] A tray 408 with icons for commonly used applications, such as:
[0197] o an icon 416 of the phone module 138 labeled “Phone”, which optionally includes an indicator 414 of the number of missed calls or voicemails;
[0198] o an icon 418 of the email client module 140 labeled “Mail,” which optionally includes an indicator 410 of the number of unread emails;
[0199] o An icon 420 labeled “Browser” of the browser module 147; and
[0200] o an icon 422 labeled “iPod” for a video and music player module 152 (also referred to as an iPod (trademark of Apple Inc.) module 152); and
[0201] Icons of other applications, such as:
[0202] o Icon 424 of IM module 141 labeled “Message”;
[0203] o Icon 426 labeled “Calendar” of calendar module 148;
[0204] o Icon 428 labeled “Photos” of the image management module 144;
[0205] o An icon 430 labeled “Camera” of the camera module 143;
[0206] ○ Icon 432 labeled “Online Video” of the online video module 155;
[0207] ○ Icon 434 labeled “Stock Market” of the Stock Market Widget 149 - 2 ;
[0208] o An icon 436 labeled “Map” of the map module 154;
[0209] ○ Icon 438 labeled “Weather” of the weather widget 149-1;
[0210] ○ Icon 440 labeled as “Clock” of the alarm clock widget 149 - 4 ;
[0211] o An icon 442 labeled “Fitness Support” of the fitness support module 142;
[0212] o An icon 444 labeled "Notes" of the notes module 153; and
[0213] o An icon 446 labeled “Settings” for a settings application or module that provides access to settings for the device 100 and its various applications 136 .
[0214] It should be noted that Figure 4A The icon labels shown in are exemplary only. For example, icon 422 of video and music player module 152 is labeled "Music" or "Music Player". Other labels are optionally used for various application icons. In some embodiments, the label of a corresponding application icon includes the name of the application corresponding to the corresponding application icon. In some embodiments, the label of a particular application icon is different from the name of the application corresponding to the particular application icon.
[0215] Figure 4B A touch-sensitive surface 451 (eg, touch screen display 112) is shown having a touch-sensitive surface 451 (eg, Figure 3 tablet computer or touch pad 355) device (e.g., Figure 3Device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of sensors 359) for detecting intensity of contacts on touch-sensitive surface 451 and / or one or more tactile output generators 357 for generating tactile output for a user of device 300.
[0216] Although some of the examples below are given with reference to input on a touch screen display 112 (where a touch-sensitive surface and a display are combined), in some embodiments, the device detects input on a touch-sensitive surface that is separate from the display, such as Figure 4B In some embodiments, the touch-sensitive surface (e.g., Figure 4B 451) has a main axis (e.g., Figure 4B 453) corresponding to the principal axis (for example, Figure 4B According to these embodiments, the device detects a position corresponding to a corresponding position on the display (e.g., Figure 4B 460 corresponds to 468 and 462 corresponds to 470) in contact with touch-sensitive surface 451 (e.g., Figure 4B Thus, when the touch-sensitive surface (e.g., Figure 4B 451) and a display of a multi-function device (e.g., Figure 4B When the user input detected by the device on the touch-sensitive surface (e.g., contacts 460 and 462 and their movement) is separated, the device is used to manipulate the user interface on the display. It should be understood that similar methods are optionally used for other user interfaces described herein.
[0217] In addition, although the following examples are primarily given with reference to finger inputs (e.g., finger contacts, single-finger tap gestures, finger swipe gestures), it should be understood that in some embodiments, one or more of these finger inputs are replaced by input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture is optionally replaced by a mouse click (e.g., instead of contact), followed by movement of the cursor along the path of the swipe (e.g., instead of movement of the contact). As another example, a tap gesture is optionally replaced by a mouse click when the cursor is over the location of the tap gesture (e.g., instead of detecting contact, followed by ceasing to detect contact). Similarly, when multiple user inputs are detected simultaneously, it should be understood that multiple computer mice are optionally used simultaneously, or a mouse and finger contact are optionally used simultaneously.
[0218] Figure 5AAn exemplary personal electronic device 500 is shown. Device 500 includes a body 502. In some embodiments, device 500 may include a body 502 relative to devices 100 and 300 (e.g., Figures 1A to 4B ) some or all of the features described in the foregoing. In some embodiments, device 500 has a touch-sensitive display screen 504, referred to hereinafter as touch screen 504. As an alternative 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 touch-sensitive surface) optionally includes one or more strength sensors for detecting the intensity of contact (e.g., touch) applied. One or more strength sensors of touch screen 504 (or touch-sensitive surface) can provide output data representing the intensity of touch. The user interface of device 500 can respond to touch based on the intensity of the touch, which means that touches of different intensities can invoke different user interface operations on device 500.
[0219] Exemplary techniques for detecting and processing touch intensity are found, for example, in the following related patent applications: International patent application serial number PCT / US2013 / 040061, entitled “Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application,” filed on May 8, 2013, published as WIPO patent publication number WO / 2013 / 169849; and International patent application serial number PCT / US2013 / 069483, entitled “Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships,” filed on November 11, 2013, published as WIPO patent publication number WO / 2014 / 105276, each of which is hereby incorporated by reference in its entirety.
[0220] In some embodiments, the device 500 has one or more input mechanisms 506 and 508. The input mechanisms 506 and 508 (if included) can be physical. Examples of physical input mechanisms include push buttons and rotatable mechanisms. In some embodiments, the device 500 has one or more attachment mechanisms. Such attachment mechanisms (if included) can allow the device 500 to be attached to, for example, hats, glasses, earrings, necklaces, shirts, jackets, bracelets, watchbands, bracelets, pants, belts, shoes, wallets, backpacks, etc. These attachment mechanisms allow the user to wear the device 500.
[0221] Figure 5B An exemplary personal electronic device 500 is depicted. In some embodiments, the device 500 may include a reference Figure 1A , Figure 1B and Figure 3 Some or all of the components described. Device 500 has a bus 512 that operatively couples an I / O portion 514 to one or more computer processors 516 and a memory 518. I / O portion 514 may be connected to a display 504, which may have a touch-sensitive component 522 and optionally a strength sensor 524 (e.g., a contact strength sensor). In addition, I / O portion 514 may be connected to a communication unit 530 for receiving application and operating system data using Wi-Fi, Bluetooth, near field communication (NFC), cellular and / or other wireless communication technologies. Device 500 may include input mechanisms 506 and / or 508. For example, input mechanism 506 is optionally a rotatable input device or a depressible input device and a rotatable input device. In some examples, input mechanism 508 is optionally a button.
[0222] In some examples, input mechanism 508 is optionally a microphone. Personal electronic device 500 optionally includes various sensors, such as GPS sensor 532, accelerometer 534, orientation sensor 540 (e.g., compass), gyroscope 536, motion sensor 538, and / or combinations thereof, all of which are operably connected to I / O portion 514.
[0223] The memory 518 of the personal electronic device 500 may include one or more non-transitory computer-readable storage media for storing computer-executable instructions that, when executed by one or more computer processors 516, may, for example, cause the computer processors to perform the techniques described below, including processes 800, 900, 1100, 1300, 1500, and 1700. A computer-readable storage medium may be any medium that can tangibly contain or store computer-executable instructions for use by or in conjunction with an instruction execution system, apparatus, and device. In some examples, the storage medium is a transient computer-readable storage medium. In some examples, the storage medium is a non-transitory computer-readable storage medium. Non-transitory computer-readable storage media may include, but are not limited to, magnetic storage devices, optical storage devices, and / or semiconductor storage devices. Examples of such storage devices include magnetic disks, optical disks based on CD, DVD, or Blu-ray technology, and persistent solid-state memory such as flash memory, solid-state drives, and the like. The personal electronic device 500 is not limited to Figure 5B components and configurations, but may include other components or additional components in a variety of configurations.
[0224] As used herein, the term "indicative representation" refers to an optional feature of the apparatus 100, 300, and / or 500 ( Figure 1A , Figure 3 and FIG. 5A to FIG. 5B ) is a user-interactive graphical user interface object displayed on a display screen of a computer. For example, an image (e.g., an icon), a button, and text (e.g., a hyperlink) optionally each constitute an affordance.
[0225] As used herein, the term "focus selector" refers to an input element used to indicate the current portion of a user interface that a user is interacting with. In some implementations that include a cursor or other position marker, the cursor acts as a "focus selector" such that when the cursor is over a particular user interface element (e.g., a button, window, slider, or other user interface element), a focus selector is displayed on a touch-sensitive surface (e.g., Figure 3 Touchpad 355 or Figure 4B In the event that an input (e.g., a press input) is detected on the touch-sensitive surface 451 in the display, the particular user interface element is adjusted according to the detected input. In the case that a touch-screen display (e.g., Figure 1A A touch-sensitive display system 112 or Figure 4AIn some implementations of the touch screen 112 in FIG. 1 , a contact detected on the touch screen acts as a “focus selector” such that when an input (e.g., a press input by the contact) is detected at the location of a particular user interface element (e.g., a button, window, slider, or other user interface element) on the touch screen display, the particular user interface element is adjusted in accordance with the detected input. In some implementations, the focus moves from one area of the user interface to another area of the user interface without corresponding movement of a cursor or movement of the contact on the touch screen display (e.g., by using a tab key or arrow keys to move the focus from one button to another); in these implementations, the focus selector moves in accordance with the movement of the focus between different areas of the user interface. Regardless of the specific form the focus selector takes, the focus selector is typically a user interface element (or contact on the touch screen display) that is controlled by the user to deliver the user's intended interaction with the user interface (e.g., by indicating to the device the element of the user interface with which the user desires to interact). For example, when a press input is detected on a touch-sensitive surface (e.g., a touchpad or touchscreen), the position of a focus selector (e.g., a cursor, contact, or selection box) over a corresponding button will indicate that the user intends to activate the corresponding button (rather than other user interface elements shown on the device display).
[0226] As used in the specification and claims, the term "characteristic intensity" of a contact refers to a characteristic of a contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on multiple intensity samples. The characteristic intensity is optionally based on a predefined number of intensity samples or a set of intensity samples collected during a predetermined time period (e.g., 0.05 seconds, 0.1 seconds, 0.2 seconds, 0.5 seconds, 1 second, 2 seconds, 5 seconds, 10 seconds) relative to a predefined event (e.g., after contact is detected, before contact is detected to be lifted off, before or after contact starts to move, before contact ends, before or after contact intensity is detected to increase, and / or before or after contact intensity is detected to decrease). The characteristic intensity of a contact is optionally based on one or more of the following: the maximum value of the intensity of the contact, the mean value of the intensity of the contact, the average value of the intensity of the contact, the value at the top 10% of the intensity of the contact, the half-maximum value of the intensity of the contact, the 90% maximum value of the intensity of the contact, etc. In some embodiments, the duration of the contact is used when determining the characteristic intensity (e.g., when the characteristic intensity is the average value of the intensity of the contact over time). In some embodiments, the feature strength is compared to a set of one or more strength thresholds to determine whether the user has performed an operation. For example, the set of one or more strength thresholds optionally includes a first strength threshold and a second strength threshold. In this example, a contact whose feature strength does not exceed the first threshold results in a first operation, a contact whose feature strength exceeds the first strength threshold but does not exceed the second strength threshold results in a second operation, and a contact whose feature strength exceeds the second threshold results in a third operation. In some embodiments, a comparison between the feature strength and one or more thresholds is used to determine whether to perform one or more operations (e.g., whether to perform the corresponding operation or to abandon the corresponding operation) rather than to determine whether to perform the first operation or the second operation.
[0227] In some embodiments, a portion of a gesture is identified for determining characteristic strength. For example, the touch-sensitive surface optionally receives a continuous swipe contact that transitions from a starting position and reaches an end position, where the contact strength increases. In this example, the characteristic strength of the contact at the end position is optionally based only on a portion of the continuous swipe contact, rather than the entire swipe contact (e.g., only the portion of the swipe contact at the end position). In some embodiments, a smoothing algorithm is optionally applied to the strength of the swipe contact before determining the characteristic strength of the contact. For example, a smoothing algorithm optionally includes one or more of the following: an unweighted sliding average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and / or an exponential smoothing algorithm. In some cases, these smoothing algorithms eliminate narrow peaks or depressions in the strength of the swipe contact to achieve the purpose of determining the characteristic strength.
[0228] The intensity of contact on the touch-sensitive surface is optionally characterized relative to one or more intensity thresholds such as a contact detection intensity threshold, a light press intensity threshold, a deep press intensity threshold, and / or one or more other intensity thresholds. In some embodiments, the light press intensity threshold corresponds to an intensity at which the device will perform an operation typically associated with clicking a button of a physical mouse or trackpad. In some embodiments, the deep press intensity threshold corresponds to an intensity at which the device will perform an operation different from the operation typically associated with clicking a button of a physical mouse or trackpad. In some embodiments, when a contact having a characteristic intensity lower than the light press intensity threshold (e.g., and higher than a nominal contact detection intensity threshold, contacts lower than the nominal contact detection intensity threshold are no longer detected) is detected, the device will move the focus selector according to the movement of the contact on the touch-sensitive surface without performing an operation associated with the light press intensity threshold or the deep press intensity threshold. Generally speaking, unless otherwise stated, these intensity thresholds are consistent between different groups of user interface illustrations.
[0229] An increase in contact feature intensity from an intensity below a light press intensity threshold to an intensity between the light press intensity threshold and the deep press intensity threshold is sometimes referred to as a "light press" input. An increase in contact feature intensity from an intensity below a deep press intensity threshold to an intensity above the deep press intensity threshold is sometimes referred to as a "deep press" input. An increase in contact feature intensity from an intensity below a contact detection intensity threshold to an intensity between the contact detection intensity threshold and the light press intensity threshold is sometimes referred to as detecting contact on the touch surface. A decrease in contact feature intensity from an intensity above the contact detection intensity threshold to an intensity below the contact detection intensity threshold is sometimes referred to as detecting contact lifted from the touch surface. In some embodiments, the contact detection intensity threshold is zero. In some embodiments, the contact detection intensity threshold is greater than zero.
[0230] In some embodiments described herein, one or more operations are performed in response to detecting a gesture that includes a corresponding press input or in response to detecting a corresponding press input performed using a corresponding contact (or multiple contacts), wherein the corresponding press input is detected at least in part based on detecting that the strength of the contact (or multiple contacts) increases to above a press input strength threshold. In some embodiments, the corresponding operation is performed in response to detecting that the strength of the corresponding contact increases to above the press input strength threshold (e.g., a "down stroke" of the corresponding press input). In some embodiments, the press input includes an increase in the strength of the corresponding contact to above the press input strength threshold and the strength of the contact subsequently decreases to below the press input strength threshold, and the corresponding operation is performed in response to detecting that the strength of the corresponding contact subsequently decreases to below the press input threshold (e.g., an "up stroke" of the corresponding press input).
[0231] In some embodiments, the device employs intensity hysteresis to avoid unexpected inputs sometimes referred to as "jitter," where the device defines or selects a hysteresis intensity threshold that has a predefined relationship to a press input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units lower than the press input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some reasonable proportion of the press input intensity threshold). Thus, in some embodiments, a press input includes an increase in the intensity of the corresponding contact to above the press input intensity threshold and a subsequent decrease in the intensity of the contact to below the hysteresis intensity threshold corresponding to the press input intensity threshold, and a corresponding operation is performed in response to detecting that the intensity of the corresponding contact subsequently decreases to below the hysteresis intensity threshold (e.g., an "upward stroke" of the corresponding press input). Similarly, in some embodiments, a press input is detected only when the device detects that the contact intensity increases from an intensity equal to or below the hysteresis intensity threshold to an intensity equal to or above the press input intensity threshold and, optionally, that the contact intensity subsequently decreases to an intensity equal to or below the hysteresis intensity, and a corresponding operation is performed in response to detecting the press input (e.g., an increase in contact intensity or a decrease in contact intensity, depending on the circumstances).
[0232] For ease of explanation, optionally, a description of an operation performed in response to a press input associated with a press input intensity threshold or in response to a gesture including a press input is triggered in response to detecting any of the following: contact intensity increasing to above the press input intensity threshold, contact intensity increasing from an intensity below a hysteresis intensity threshold to an intensity above the press input intensity threshold, contact intensity decreasing to below the press input intensity threshold, and / or contact intensity decreasing to below a hysteresis intensity threshold corresponding to the press input intensity threshold. Additionally, in examples where an operation is described as being performed in response to detecting that the intensity of the contact decreases below the press input intensity threshold, the operation is optionally performed in response to detecting that the intensity of the contact decreases below a hysteresis intensity threshold that corresponds to and is less than the press input intensity threshold.
[0233] As used herein, an "installed application" refers to a software application that has been downloaded to an electronic device (e.g., device 100, 300, and / or 500) and is ready to be launched (e.g., become open) on the device. In some embodiments, a downloaded application becomes an installed application using an installer that extracts program portions from a downloaded software package and integrates the extracted portions with the operating system of a computer system.
[0234] As used herein, the term "open application" or "executing application" refers to a software application that has maintained state information (e.g., as part of device / global internal state 157 and / or application internal state 192). An open or executing application is optionally any of the following types of applications:
[0235] the active application currently displayed on the display of the device on which the application is being used;
[0236] Background applications (or background processes) that are not currently displayed but whose processes are being processed by one or more processors; and
[0237] - A suspended or dormant application that is not running but has state information stored in memory (volatile and non-volatile, respectively) and can be used to resume execution of the application.
[0238] As used herein, the term "closed application" refers to a software application that does not have retained state information (e.g., the state information of a closed application is not stored in the memory of a device). Thus, closing an application includes stopping and / or removing the application's application process and removing the application's state information from the memory of a device. Generally speaking, while in a first application, opening a second application does not close the first application. When the second application is displayed and the first application stops being displayed, the first application becomes a background application.
[0239] Attention is now turned to embodiments of a user interface ("UI") and associated processes implemented on an electronic device, such as portable multifunction device 100, device 300, or device 500.
[0240] Figures 6A to 6Z An exemplary user interface for managing visual content in media according to some embodiments is shown. The user interface in these figures is used to illustrate the process described below, including Figure 8 process.
[0241] Fig. 6A A computer system 600 (e.g., an electronic device) is shown displaying a camera user interface including a live preview 630 that optionally extends from a top of a display of the computer system 600 to a bottom of a display of the computer system 600. In some embodiments, the computer system 600 optionally includes one or more features of the device 100, the device 300, or the device 500. In some embodiments, the computer system 600 is a tablet computer, a phone, a laptop computer, a desktop computer, etc.
[0242] Live preview 630 is a representation of the field of view ("FOV") of one or more cameras of computer system 600. In some embodiments, live preview 630 is a representation of a portion of the FOV. In some embodiments, live preview 630 is based on images detected by one or more camera sensors. In some embodiments, computer system 600 captures images using multiple camera sensors and combines them to display live preview 630. In some embodiments, computer system 600 captures images using a single camera sensor to display live preview 630.
[0243] Fig. 6A The camera user interface of 604 includes an indicator area 602 and a control area 606, which are positioned relative to the live preview 630 so that the indicators and controls can be displayed simultaneously with the live preview 630. The camera display area 604 is substantially free of indicators and / or controls. Fig. 6A As shown, the camera user interface includes a visual border 608 indicating a border between the indicator area 602 and the camera display area 604 and a border between the camera display area 604 and the control area 606 .
[0244] like Fig. 6A As shown, the indicator area 602 includes indicators such as a flash indicator 602a and an animated image indicator 602b. The flash indicator 602a indicates whether the flash mode is on (e.g., active), off (e.g., inactive), or in another mode (e.g., automatic mode). Fig. 6A , flash indicator 602a indicates to the user that flash mode is off and will not operate using a flash when the computer system 600 is capturing media. Additionally, animated image indicator 602b indicates whether the camera is configured to capture a single image or multiple images (e.g., in response to detecting a request to capture media). In some embodiments, indicator area 602 is overlaid on live preview 630 and optionally includes a colored (e.g., gray; translucent) overlay.
[0245] like Fig. 6A As shown, the camera display area 604 includes a live preview 630 and a zoom control (e.g., an affordance) 622. The zoom control 622 includes a 0.5x zoom control 622a, a 1x zoom control 622b, and a 2x zoom control 622c. Fig. 6A As shown, the 1x zoom control 622b is bolded and enlarged compared to the other zoom controls, indicating that the 1x zoom control 622b is selected and the computer system 600 is displaying the live preview 630 at the "1x" zoom level.
[0246] like Fig. 6AAs shown, the control area 606 includes a camera mode control (e.g., a control) 620, a shutter control 610, a camera switcher control 614, and a representation of a media collection 612. Fig. 6A , camera mode controls 620a-620e are displayed, and the 'photo' camera mode 620c is bolded, indicating that the computer system 600 is configured to capture photo media when the shutter control 610 is activated. Thus, the shutter control 610, when activated, causes the computer system 600 to capture media (e.g., in the image) using one or more camera sensors based on the current state of the live preview 630 and the current state of the camera application (e.g., which camera mode is selected). Fig. 6A The captured media is stored locally at the computer system 600 and / or sent to a remote server for storage. The camera switcher control 614, when activated, causes the computer system 600 to switch to displaying the field of view of a different camera in the live preview 630, such as by switching between a rear-facing camera sensor and a front-facing camera sensor. Fig. 6A The representation of the media collection 612 shown in is a representation of the media (e.g., images, videos) most recently captured by the computer system 600. In some embodiments, in response to detecting a gesture pointing to the media collection 612, the computer system 600 displays the media (e.g., images, videos) associated with the media collection 612. Figure 7B In some embodiments, the indicator area 602 is overlaid on the live preview 630 and optionally includes a colored (e.g., gray; semi-transparent) overlay. Fig. 6A , the computer system detects a tap input 650a on (and / or directed toward) the shutter control 610.
[0247] like Figure 6B As shown, in response to detecting the tap input 650a, the computer system 600 initiates media capture to capture Fig. 6A A live preview 630 of the video and the new representation is displayed in the media collection 612. Figure 6B In the new Fig. 6A A representation of a live preview 630 of (e.g., captured in response to detecting a tap input 650a on the shutter control 610). Additionally, a new representation is displayed at Figure 6B , because the new representation corresponds to the representation of the most recently captured media.
[0248] like Figure 6BAs shown, live preview 630 includes a representation showing person 640 standing behind a tree, wherein the head of person 640 and a portion of the body of person 640 are not obscured by the tree. Located on the tree is a label 642, which includes a text portion 642a (e.g., "LOST DOG") and a text portion 642b (e.g., a paragraph of text beginning with "LOVEABLE"). Figure 6B In the example, the text in the text portions 642a-642b is not visually prominent and is not Figure 6B In the embodiment shown in , the text in text portions 642a and 642b is small and cannot be easily read by a user viewing computer system 600. Figure 6B , the computer system 600 detects an expansion input 650b on the live preview 630.
[0249] like Figure 6C As shown, in response to detecting the expansion input 650b, the computer system 600 replaces the display of the 2.5x zoom control with the display of the 2.5x zoom control. Figure 6B Additionally, computer system 600 updates live preview 630 to reflect the change in zoom level such that objects in the field of view of one or more cameras are displayed at a "2.5x" zoom level (e.g., as indicated by newly displayed and selected (e.g., magnified and bolded) 2.5x zoom control 622d), rather than Figure 6B The '1x' zoom level is used to display the
[0250] When with Figure 6B When comparing, Figure 6C The text portion 642a-642b is Figure 6B The text portions 642a-642b are more visually prominent (e.g., larger, more readable). Figure 6C , it is determined that text portions 642a-642b (and / or text included in text portions 642a-642b) respectively satisfy a set of prominence criteria. Figure 6C The text portions 642a-642b of the live preview 630 meet the set of prominence criteria because each text portion occupies more than a threshold portion (e.g., 10%) of the live preview 630 and / or each text portion includes text that is larger than a threshold size (e.g., larger than a 6pt font). In some embodiments, one or more text portions meet the set of prominence criteria based on other criteria, such as whether the corresponding text portion includes one or more text types (e.g., an email, a phone number, a quick response ("QR") code, etc.), whether the corresponding text portion is displayed at or near a specific location (e.g., a center location) of the live preview 630, whether the corresponding text portion is relevant (based on the context of the media displayed as the live preview 630) (e.g., with respect to the live preview 630). FIG. 7A to FIG. 7L , Figure 8 and Fig. 9 discussed in more detail).
[0251] like Figure 6C As shown, due to determining that the text portions 642a-642b satisfy the set of prominence criteria (and / or due to at least a portion of the text satisfying the set of prominence criteria), the computer system 600 displays brackets 636a around the text portions 642a-642b in the camera display area 604 and displays a text management control 680 to the right of the zoom control 622d in the camera display area.
[0252] review Figure 6B , bracket 636a and text management control 680 are not shown in Figure 6B Because it is determined that text portions 642a-642b do not satisfy the set of prominence criteria (and / or because no text portions satisfy the set of prominence criteria). Figure 6B , it is determined that text portions 642a-642b do not meet the prominence criteria set because text portions 642a-642b do not occupy more than a threshold portion of live preview 630 and do not include text greater than a threshold size. FIG. 6B to FIG. 6C ), determining whether a corresponding text portion satisfies the set of prominence criteria based on how / when the text portion is currently displayed in live preview 630 rather than simply based on whether live preview 630 includes text (and / or text portion).
[0253] Back to Figure 6C , bracket 636a is positioned around the image of the dog on the mark 642 because the image of the dog is positioned between text portions 642a-642b. In some embodiments, multiple brackets are displayed so that one bracket is displayed around text portion 642a and another bracket is displayed around text portion 642b. In some embodiments, multiple brackets are displayed because it is determined that multiple text portions (e.g., "portions of text") meet the prominence standard set and the object is located between the text portions. In some embodiments, when the object is not positioned between multiple portions of text, only one bracket is displayed around the multiple portions of text. In some embodiments, when text portion 642a meets the prominence standard set but text portion 642b does not meet the prominence standard set, brackets are displayed around text portion 642a, while brackets are not displayed around text portion 642b (and vice versa). In some embodiments, in addition to and / or in lieu of displaying brackets around a corresponding portion of text, the computer system 600 indicates that a corresponding portion of text (e.g., a portion of text) meets the set of prominence criteria by emphasizing the corresponding portion in other ways, such as by highlighting, bolding, resizing, or displaying a box around the corresponding portion of text.
[0254] like Figure 6C As shown, the computer system 600 displays text type indicators 638a-638b (e.g., underlined) to show that a particular text type (e.g., email, address, phone number, QR code, etc.) has been detected (e.g., by a data detector) in the text portion 642b. Figure 6C , text type indicator 638a is displayed under "123 Main Street" to show that an address has been detected, and text type indicator 638b is displayed under "123-4567" to show that a phone number has been detected. In some embodiments, when a text type indicator is displayed under a portion of text, a user can select the portion of text and / or the text type indicator to perform an operation (e.g., as described below with respect to Figures 6M to 6N for further discussion).
[0255] FIG. 6C to FIG. 6D An exemplary embodiment is shown in which a computer system 600 moves within a physical environment. FIG. 6C to FIG. 6D A graphical representation 660 is included that illustrates a computer system 600 (e.g., FIG. 6C to FIG. 6D ) relative to a changed position 660b of the computer system 600 in the physical environment (e.g., Fig.6D The original position 660a of Figure 6C As shown, computer system 600 is in home position 660a. Figure 6C , the location of computer system 600 changes.
[0256] like Fig.6D As shown, in response to the position change of the computer system 600 (e.g., from the original position 660a to the changed position 660b), the computer system 600 converts the live preview in an upward direction. Fig.6D , converting the live preview 630 in an upward direction so that Figure 6C The top portion of the live preview 630 (eg, the portion including the text portion 642a) is stopped from being displayed, and a new bottom portion of the live preview 630 (eg, the portion including the text portion 642a) is newly displayed. Fig.6D ). Fig.6D In the example above, it is determined that text portion 642a does not satisfy the prominence criteria set while text portion 642b does satisfy (or continues to satisfy) the prominence criteria set. Here, it is determined that text portion 642a does not satisfy the prominence criteria set because text portion 642a is no longer displayed as Fig.6D630 (e.g., in the camera display area). As shown, because text portion 642a does not meet the prominence standard set and text portion 642b meets the prominence standard set, computer system 600 displays bracket 636b around text portion 642b (rather than text portion 642a) and stops displaying bracket 636a. In other words, computer system 600 dynamically changes bracket 636a to bracket 636b based on a change in determining whether one or more text portions (e.g., text portions currently displayed as part of live preview 630) meet and / or do not meet the prominence standard set. Thus, one or more determinations of whether one or more text portions satisfy the set of prominence criteria are dynamic and can change as the live preview 630 changes in response to a request to zoom in (e.g., expand input) / zoom out (e.g., pinch input), pan (e.g., swipe right, left, up, down input), and / or in response to movement of the computer system 600 (e.g., forward, backward, up, down) and / or changes to one or more cameras of the computer system 600. In some embodiments, when one or more determinations of whether one or more text portions satisfy the set of prominence criteria change, the display of one or more brackets (e.g., brackets 636a-636b) and / or the display of the text management controls 680 changes (as described below with respect to FIG. 7A to FIG. 7L , Figure 8 , Fig. 9 642b). In some embodiments, when the computer system 600 displays brackets 636a around text portion 642b (and / or in response to detecting text in live preview 630), the computer system 600 dims and / or reduces the saturation (e.g., vividness, color, and / or hue) of the portion of live preview 630 that does not have text (e.g., the photo of the dog) while maintaining the saturation and / or brightness of text portion 642b (and / or other portions of the text). In some embodiments, as part of dimming the portion of live preview 630 that does not have text and maintaining the brightness of text portion 642b, the computer system 600 displays text portion 642b with a greater amount of brightness than the portion of live preview 630 that does not have text.
[0257] like Fig.6D As shown, because it is determined that text portion 642b does (or continues to) meet the prominence criteria set, computer system 600 continues to display text management controls 680. Fig.6D , text management controls 680 are displayed because at least one determination is made that the currently displayed portion of text (e.g., the portion of text of live preview 630) satisfies the set of prominence criteria, regardless of whether another portion of text (e.g., text portion 642a) continues to fail (or does not) satisfy the set of prominence criteria. Fig.6D, the computer system 600 moves back to the original position 660a.
[0258] like Fig. 6E As shown, in response to the computer system 600 being in the home position 660a, the computer system 600 uses the Figure 6C One or more of the techniques described above are used to redisplay the live preview 630. Fig. 6E , the computer system 600 detects a tap input 650 e on the text management control 680 .
[0259] like Fig. 6F As shown, in response to detecting the tap input 650e, the computer system 600 changes the display of the text management control 680. Specifically, the computer system 600 displays the text management control 680 in an active and / or selected state. Fig. 6F The text management control 680 (e.g., Fig. 6F ) and stops displaying the text management control 680 in an inactive state and / or deselected state (e.g., as shown in FIG. Fig. 6E 680, where the text is not in bold.
[0260] like Fig. 6F As shown, in response to detecting tap input 650e, computer system 600 emphasizes text portions 642a-642b and dims other portions of live preview 630 (and / or other objects in the field of view of one or more cameras), such as person 640, the image of a dog on tag 642, and the tree displayed in live preview 630. Along with dimming other portions of live preview 630, computer system 600 stops one or more controls (e.g., Fig. 6E In addition, the computer system 600 also dims (or stops displaying) portions of the camera user interface, such as the indicators in the indicator area 602 and the controls in the camera control area 606. Fig. 6FSome of the dimmed indicators and / or controls in the camera user interface are not selectable (e.g., do not cause the computer system 600 to perform an action when selected). In some embodiments, in response to detecting the tap input 650e, some of the indicators and / or controls remain selectable and / or are not dimmed. In some embodiments, in response to detecting the tap input 650e, the computer system 600 maintains display of some controls in the camera display area 604. In some embodiments, the computer system 600 emphasizes portions 642a-642b by increasing the size of the text in the text portions 642a-642b, highlighting the text in the text portions 642a-642b, displaying a box around the text portions 642a-642b, and the like. In some embodiments, dimming portions of the live preview 630 includes reducing the saturation of portions of the live preview 630 that do not have text (e.g., the photo of the dog) while maintaining the saturation of the text portions 642a and 642b (e.g., using the method described above with respect to Fig.6D Similar techniques as described above).
[0261] It is worth noting that in Fig. 6F In the example, the portion of the text that is emphasized in response to detecting input 650e is in Fig. 6E In some embodiments, the brackets around a portion of the text indicate to the user which text the user will emphasize and / or manage when selection of the text management control 680 occurs. In some embodiments, in response to selecting the text management control 680, one or more portions of text that were displayed via the live preview 630 when input was received on the text management control 680 but did not have brackets surrounding it (e.g., in the following Figure 7F In, when Figure 7F In some embodiments, in response to selecting the text management control 680 (e.g., if it is determined that one or more portions of the text meet a set of prominence criteria), one or more portions of text that were displayed via the live preview 630 when input was received on the text management control 680 but did not have brackets surrounding it are emphasized.
[0262] like Fig. 6F As shown, in response to detecting tap input 650e, computer system 600 also displays text management options 682 and instructions 684 indicating one or more inputs / gestures that can be used to select a subset of text in text portions 642a-642b (e.g., "SWIPE OR TAP TO SELECT TEXT"). Fig. 6FIn the example embodiment, the text management options 682 are options for managing the text portions 642a-642b. Specifically, the text management options 682 include a copy option 682a, a select all option 682b, a find option 682c, and a share option 682d. In some embodiments, in response to receiving input pointing to the copy option 682a, the computer system 600 copies the selected text (e.g., Fig. 6F In some embodiments, in response to receiving input pointing to the select all option 682b, the computer system 600 selects all text emphasized on the computer system 600. In some embodiments, when the computer system 600 selects all text in the selected text, the computer system 600 highlights the selected text. In some embodiments, in response to receiving input pointing to the search option 682c, the computer system 600 searches for the selected text (e.g., a search application, a dictionary application, a personal assistant application) via a search application (e.g., a search engine application ... Fig. 6F ) and / or display one or more definitions and resources for the emphasized and / or selected text. In some embodiments, in response to receiving input directed to the share option 682d, the computer system 600 initiates a process of sharing the selected text via one or more applications (e.g., email, text messaging, word processing, social media applications) (e.g., one or more predetermined applications). In some embodiments, as part of initiating the process of sharing the selected text, the computer system 600 displays a scrollable list of applications, wherein selecting an application from the scrollable list of applications causes the computer system 600 to share the selected text using the selected application. In some embodiments, the scrollable list of applications is displayed simultaneously with a portion of the live preview 630 (e.g., including one or more of the text portions 642a-642b). Fig. 6F , the computer system 600 detects a tap input 650f on a portion of the live preview 630 (e.g., a portion within a dimmed area of the live preview 630 and / or a portion of the live preview 630 that does not include text portions 642a-642b and / or text management controls 680).
[0263] like Figure 6GAs shown, in response to detecting tap input 650f, computer system 600 displays text management control 680 in an inactive state, de-emphasizes text portions 642a-642b, brightens other portions of live preview 630 and the camera user interface, and stops displaying text management options 682 and instructions 684. Additionally, in response to detecting tap input 650f, computer system 600 redisplays bracket 636a because it is determined that text portions 642a-642b satisfy (or continue to satisfy) the set of prominence criteria. Effectively, in response to detecting tap input 650f, the camera user interface returns to the state that the camera user interface was in before tap input 650e was detected on text management control 680. Figure 6G , the computer system 600 detects a tap input 650g in the text management control 680 .
[0264] like Figure 6H As shown, in response to detecting the tap input 650g, the computer system 600 uses the above Fig. 6F One or more of the techniques described above are used to display Figure 6H The camera user interface. It is worth noting that Figure 6H in (and in Fig. 6F In some embodiments, the computer system 600, in response to detecting the tap input 650g, dims one or more portions of the text that do not meet the set of prominence criteria. Figure 6H , the computer system 600 detects a tap input 650h on the text portion 642b.
[0265] like Fig.6I As shown, in response to detecting the tap input 650h, the computer system 600 selects the text portion 642b and repositions the text management option 682 so that the text management option 682 is in Fig.6I 642a (e.g., as shown in FIG. Figure 6H 642a). Text management options 682 are repositioned to indicate that the text management options are available for managing text in text portion 642b but not in text portion 642a. Thus, in other words, computer system 600 changes the text selected to be managed using text management options 682 in response to detecting input (e.g., a swipe or tap) selecting a particular portion of text.
[0266] It is worth noting that Fig.6I The live preview of 630 does not include Figure 6H The live preview 630 includes person 640. This is because person 640 is already in Fig.6I The live preview 630 of FIG. 600 moves behind the tree and is therefore not in the field of view of one or more cameras of the computer system 600. Fig.6I As shown, when the text management control 680 is displayed in an active state and / or when the text management option 682 is displayed, the live preview 630 continues to update to reflect changes in the field of view of one or more cameras of the computer system 600. In some embodiments, when the text management control 680 is displayed in an active state and / or when the text management option 682 is displayed, the live preview 630 does not continue to update. Therefore, in embodiments where the live preview 630 is not updated, the computer system 600 will Fig.6I The display of the portion of person 640 protruding from behind the tree is maintained in the live preview 630 of FIG. Fig.6I , the computer system 600 detects an expansion input 650i.
[0267] like Figure 6J As shown, in response to detecting the expansion input 650i, the computer system 600 displays the live preview 630 at an increased zoom level and maintains the display of the text portion 642b and the text management options 682. In some embodiments, the computer system 600 continues to display at least a subset of the text portion 642b in response to a request to zoom in (e.g., expand input) (and / or zoom out, pan, and / or move the computer system 600 and / or one or more cameras of the computer system 600) because the text portion 642b is selected. In some embodiments, the display of the selected text portion (e.g., text portion 642b) is static. Therefore, in some embodiments where the selected text portion is static, the computer system 600 continues to display the selected text portion regardless of whether the selected text portion remains in the field of view of one or more cameras (e.g., as described below with respect to Figures 6L to 6M further described) (e.g., when the computer system 600 is moved, panned, and / or zoomed, etc.) (e.g., while the camera user interface remains displayed). Figure 6J , computer system 600 detects a tap input 650j on the word "Fluffy," which is a word included in text portion 642b.
[0268] like Figure 6K As shown, in response to detecting the tap input 650j, the computer system 600 selects and highlights the word "Fluffy". Figure 6K In, you can use Figure 6K to manage only the selected word "Fluffy". Figure 6K , the computer system 600 detects a left swipe input 650k starting from the word "Fluffy".
[0269] like Figure 6L As shown, in response to detecting the left swipe input 650k, the computer system 600 selects and highlights a plurality of words included in the text portion 642b based on the direction of the swipe input 650k. Figure 6L As shown, the words "THE NAME FLUFFY" are highlighted to show that "THE NAME FLUFFY" has been selected based on the swipe input 650k. Figure 6L In, you can use Figure 6L The text management options 682 displayed in the figure are used to manage only the selected words "The name is FLUFFY".
[0270] Figures 6L to 6M 1 shows an exemplary embodiment in which the computer system 600 moves in the physical environment while the computer system 600 continues to display the selected text portion (or the text portion of a subset of the selected text portion) regardless of whether the selected text portion remains in the field of view of one or more cameras (e.g., as described below with respect to Figures 6L to 6M further described). Figures 6L to 6M A graphical representation 660 is included that shows a changed position 660c of the computer system 600 relative to the computer system 600 (e.g., at Figure 6M ) of the original position 660a (e.g., in Figures 6L to 6M middle).
[0271] like Figure 6L As shown, tree mark 646 indicates that Figures 6L to 6M The static portion of the tree is shown in the live preview 630 of FIG. Figure 6L In FIG. 6A , a tree tag 646 is displayed below the text portion 642b. Figure 6L , the location of computer system 600 changes.
[0272] like Figure 6M As shown, in response to the change in the positioning of the computer system 600 (e.g., as shown by the changed position 660c relative to the original position 660a), the computer system 600 updates the live preview so that the tree marker 646 is displayed above the text portion 642b. Figure 6M In the computer system 600, the text portion 642b is no longer in the field of view of one or more cameras, so that the text portion 642b will be located at the text portion 642b is displayed as Figure 6M 630 (e.g., as evidenced by tree marker 646 moving to a higher position in live preview 630). However, computer system 600 continues to Figure 6M642b is displayed in the live preview 630 of the computer system 600 because a subset of the text portion 642b is selected (e.g., "The name is FLUFFY"). In some embodiments, the computer system 600 displays only the subset of the text portion 642b that is selected, and does not display other portions of the text portion 642b that are not selected. In some embodiments, the computer system 600 does not update the live preview 630 when text is selected and the camera moves (and / or zooms / pans) in the physical environment. In some embodiments, the computer system 600 responds to the computer system 600 and / or the camera of the computer system 600 being moved (e.g., and / or zoomed / panned) (e.g., as described below with respect to FIG. 7A to FIG. 7L , Figure 8 and Fig. 9 30 (described further below) to select a different portion of the text (e.g., if the text is displayed toward the bottom of the tree in live preview 630). Figure 6M , the computer system 600 detects input 650m on "123-4567" and displays a text type indication 638b under the input.
[0273] like Figure 6N As shown, in response to detecting input 650m and because it is determined that input 650m is a tap input and "123-4567" corresponds to a telephone number, computer system 600 displays a phone dialer user interface and automatically (e.g., without user input on a keypad and / or contact information card) initiates a phone call to "123-4567". In some embodiments, a confirmation screen is displayed before computer system 600 initiates the phone call.
[0274] like Fig.6O As shown, in response to detecting input 650m and because it is determined that input 650m is a press-and-hold input and "123-4567" corresponds to a phone number, computer system 600 displays phone number management options 692, which include a call option 692a, a send message option 692b, an add to contacts option 692c, and a copy option 692d. Fig.6O As shown, computer system 600 displays different options for managing certain specific text types (e.g., emails, phone numbers, QR codes) but not other text types (e.g., Figure 6L Text management options displayed when "Name is FLUFFY" is selected in 682 and Fig.6O In some embodiments, in response to detecting input directed to call option 692a, computer system 600 initiates a telephone call to "123-4567" (e.g., using the method described above with respect to telephone number management options 692a). Figure 6NIn some embodiments, in response to detecting input directed to the send message option 692b, the computer system 600 initiates a process for sending a message to "123-4567" (e.g., displaying a text management application). In some embodiments, in response to detecting input directed to the add to contacts option 692c, the computer system 600 initiates a process for adding the contact to a contact list having "123-4567" as a phone number in the contact information. In some embodiments, in response to detecting input directed to the copy option 692d, the computer system 600 uses the same techniques as described above with respect to Fig. 6F Copy "123-4567" using one or more of the techniques described in copy option 682a.
[0275] Figures 6P to 6T An exemplary embodiment is shown in which a QR code is displayed in the live preview 630. In some embodiments, the QR code may be replaced with other types of matrices and / or bar codes.
[0276] like Figure 6P As shown, the computer system 600 displays the QR code 668 and the QR code identifier 670 (e.g., "CAFE32.COM") simultaneously in the live preview 630. In some embodiments, the QR code identifier identifies one or more of a website, a contact, a cellular plan, an email address, a calendar invitation / event, a location (e.g., a GPS location), a text, a video, a phone number, a WiFi network, an application, and / or an instance of an application, etc. The QR code identifier 670 includes an indication of the information identified by the QR code. Figure 6P In FIG. 6 , QR code 668 is in the field of view of one or more cameras of computer system 600, and QR code identifier 670 is not in the field of view. Computer system 600 displays QR code identifier 670 because it is determined that QR code 668 corresponds to (e.g., or identifies) a website destination belonging to “CAFE32.COM.” Figure 6P , computer system 600 detects input 650p1 and / or input 650p2 in camera display area 604.
[0277] like Figure 6QAs shown, in response to detecting input 650p1 and / or input 650p2 (and based on determining that at least one of the inputs is a tap input and / or a press-and-hold input), the computer system 600 displays a notification 674 including a preview of the website (e.g., the "CAFE32.COM" address). In some embodiments, the preview of the network address includes the full network address (e.g., "http:\\cafe32.com\menu") and / or an image from the network address. In some embodiments, the computer system 600 displays a notification 674 in response to detecting one or more inputs instead of navigating to the network address corresponding to the QR code 668 to minimize the chance that the user accidentally navigates to the website site corresponding to the QR code 668. In some embodiments, in response to detecting input 650p1 on the QR code 668, the computer system 600 displays a notification 674 (e.g., without automatically navigating to the website). In some embodiments, in response to detecting input 650p2 on the QR code identifier, the computer system 600 automatically navigates to the website corresponding to the QR code 668 (e.g., without displaying notification 674) (e.g., using one or more similar techniques as described below with respect to the computer system 600's response to tap input 650q). Figure 6Q , the computer system 600 detects a tap input 650q on the notification 674 .
[0278] like Figure 6R As shown, in response to detecting tap input 650q, computer system 600 automatically navigates to a network address corresponding to the QR code (and / or opens) via web application 678.
[0279] like Figure 6S As shown, the computer system 600 uses the above-mentioned Figure 6P One or more of the techniques described above can be used to simultaneously display the QR code 668 and the QR code identifier 670. Figure 6S , the computer system 600 detects a tap input 650s on the text management control 680.
[0280] like Figure 6T As shown, in response to detecting the tap input 650s, the computer system 600 displays QR code management options 672, which include a share option 672a, a copy link option 672b, an add to reading list option 672c, and an open link option 672d. Fig.6O As described above, the computer system 600 displays different options for managing certain specific text types rather than managing other text types. In some embodiments, in response to detecting input pointing to the share option 672a, the computer system 600 initiates a process for sharing the network address and / or link corresponding to the QR code (e.g., using the instructions for pointing to the QR code). Fig. 6FIn some embodiments, in response to detecting input to the copy link option 672b, the computer system 600 copies the network address and / or link corresponding to the QR code (e.g., using a URL as described above with respect to the share option 682d). Fig. 6F In some embodiments, in response to detecting input directed to the Add to Reading List option 672c, the computer system 600 initiates a process for adding a network address and / or link corresponding to the QR code to a list of items (e.g., one or more articles, books, websites, etc.). In some embodiments, in response to detecting input directed to the Open Link option 672d, the computer system 600 navigates to the network address corresponding to the QR code (and / or opens) via the web application 678 (e.g., using a web application as described above with respect to Figure 6R Similar techniques as described above).
[0281] In some embodiments, QR code management options 672 include one or more options dynamically selected based on the type of resource represented by the QR code (e.g., the QR code displayed when the text management control 680 is selected). For example, the type of resource represented by the QR code may include one or more of a link to a website, a contact, a cellular plan, an email address, a calendar invitation / event, a location (e.g., a GPS location), a text, a video, a phone number, a WiFi network, an application and / or an instance of an application, etc. In some embodiments, QR code management options 672 include a first group of controls when the QR code represents a first type of resource and a second group of controls when the QR code represents a second type of resource different from the first type. In some embodiments, the first group of controls has a different number of controls from the second group of controls. In some embodiments, a preview of the resource represented by the QR code is included in the QR code management options 672 (e.g., when the QR code represents a text string).
[0282] In some embodiments, QR code management options 672 include different groups of controls based on whether the computer system 600 is in a locked state or an unlocked state. In some embodiments, when the computer system 600 is in a locked state and the QR represents a link to the application, the control options for installing and / or opening the application are displayed. In some embodiments, when the computer system 600 is in an unlocked state, even if the application is installed, the link to open the application is not displayed (e.g., suppressed) to avoid communicating information about which applications are installed on the device to unauthorized users of the device. Optionally, instead of displaying a link to open the application, the device displays the option of using a part of the available application without downloading the complete application. In some embodiments, the computer system 600 displays a different set of controls (e.g., based on whether the computer system 600 is in a locked state or an unlocked state) to limit the information given to unauthorized users (e.g., information that can be used to determine whether the application represented by the QR code is installed and / or not installed on the computer system 600).
[0283] Figure 6U to Figure 6W FIG. 6 shows an exemplary scenario in which the computer system 600 displays a selection indicator around selected text divided into columns. Figure 6U to Figure 6W , computer system 600 is oriented so that text in the environment is aligned with the field of view of one or more cameras of computer system 600 . Figure 6U The computer system 600 is shown displaying a live preview 630 that includes a representation of a text portion 648 (e.g., a football player roster). In some embodiments, the computer system 600 displays a representation of previously captured media that includes a representation of the text portion 648 and uses the following information about Figure 6U to Figure 6W One or more techniques described are used to select words in the text portion 648.
[0284] like Figure 6U As shown, the text portion 648 includes a name column 648a, a location column 648b, a state column 648c, and a grade column 648d. Each corresponding column includes text that has been retrieved by the computer system 600 (e.g., using the above description of 6A to 6F One or more of the techniques described above). Figure 6U As shown, computer system 600 emphasizes text portion 648 while reducing the visual prominence of portions of live preview 630 that do not include text (e.g., the football) (e.g., using the same techniques as described above with respect to 6A to 6F In addition, because the computer system 600 has detected the text portion 648, the computer system 600 places a frame around the text 648 to emphasize the text 648. Figure 6UAs shown, computer system 600 displays text management control 680 as active (e.g., as indicated by text management control 680 being bold) and text management options 682 (e.g., as indicated above with respect to Fig. 6F described). Figure 6U , the computer system 600 detects a first portion of a swipe input 650u on the name column 648a that travels from the "name" heading of the name column 648a to the "position" heading of the position column 648b.
[0285] like Figure 6V As shown, in response to detecting the first portion of the swipe input 650u, the computer system 600 displays a selection indicator 696 (e.g., "gray highlighted") around all the words in the name column 648a ("Name", "Maria", "Kate", "Sarah", and "Ashley") and the "Location" heading of the location column 648b. The selection indicator 696 is positioned based on the location of the swipe input 650u. Because the first portion of the swipe input 650u computer system 600 ends at the location of the "Location" heading of the location column 648b, the computer system 600 displays the selection indicator 696 around all the words up to (e.g., including the words in the name column 648a) and including the "Location" heading. In some embodiments, the computer system 600 does not include the "Location" heading of the location column 648b because the first portion of the swipe input 650u computer system 600 ends at the location of the "Location" heading of the location column 648b. In some embodiments, where the end of the input terminates at the position of the word "Defender" in the position column 648b (e.g., in the 3rd row of the position column 648b), the computer system 600 highlights all words up to the word "Defender", including all words in the name column 648a, the "Position" heading of the position column 648b (e.g., on the 1st row of the position column 648b), and the word "Forward" in the 2nd row of the position column 648b.
[0286] The shape of the selection indicator 696 depends on whether the selected text (e.g., the text surrounded by the selection indicator 696) is aligned with the computer system 600. Figure 6V , computer system 600 displays selection indicator 696 as a polygon with right angles (e.g., a shape with all right angles is referred to herein as a rectangular-based selection indicator). Selection indicator 696 is a rectangular-based selection indicator because it is determined that the selected text (e.g., the text of selection indicator 696) is aligned with computer system 600 (e.g., and / or aligned with the field of view of one or more cameras of computer system 600) (e.g., this will be described below in conjunction with Figure 6X to Figure 6Zexplained in additional detail). Figure 6V , the computer system 600 detects a second portion of the swipe input 650u, which is a right swipe input going from the "Location" heading in the location column 648b to the "State" heading in the state column 648c.
[0287] like Figure 6W As shown, in response to detecting the second portion of swipe input 650u, computer system 600 extends selection indicator 696 to the right so that selection indicator 696 is displayed around the words (e.g., all words) in name column 648a and location column 648b, and also around the "State" heading in state column 648c (e.g., using the same method as described above with respect to Figure 6U to Figure 6W 648a) because the computer system recognizes the words in the name column 648a as being in the same column. Figure 6W As shown, selection indicator 696 continues to be a rectangle-based selection indicator because the text portion continues to be aligned with the field of view of the one or more cameras. Figure 6W , the computer system 600 no longer detects the swipe input 650u. However, the computer system 600 continues to display the selection indicator 696 around a portion of the text.
[0288] Figure 6X to Figure 6Z shows that when the computer system 600 is oriented (e.g., oriented differently relative to the corresponding text portion) Figure 6U to Figure 6V An exemplary scenario in which the computer system 600 displays a selection indicator around selected text when the computer system 600 is oriented relative to the corresponding text portion such that the text in the environment is not aligned with the field of view of one or more cameras of the computer system 600. Figure 6X The computer system 600 is shown displaying a live preview 630 including a representation of a text portion 652 (e.g., a paragraph of text about football). The text portion 652 is on a piece of paper in an environment captured by the field of view of one or more cameras of the computer system 600. In some embodiments, the computer system 600 displays a representation of previously captured media including a representation of the text portion 648, and uses the following information about Figure 6U to Figure 6W One or more techniques described are used to select words in the text portion 648.
[0289] exist Figure 6X , the text portion 652 is not aligned with the field of view of one or more cameras. Figure 6X , computer system 600 is oriented in a position such that computer system 600 is not parallel to text portion 652 and / or is rotated / tilted along an axis (z-axis) in the environment (e.g., the user holds the phone at an angle and / or tilts it such that the field of view of one or more cameras is not aligned with text portion 652). Figure 6X, the computer system 600 detects a swipe input 650x in a diagonal direction going from the word “while” in the text portion 652 to the last period (“.”) in the text portion 652 .
[0290] like Figure 6Y As shown, in response to detecting swipe input 650x, computer system 600 displays selection indicator 696 around a subset of text portion 652 from the word "and" in text portion 652 to the last period in text portion 652. Figure 6Y As shown, selection indicator 696 is a polygon with some angles that are not right angles (e.g., shapes with some acute angles and some obtuse angles are referred to herein as non-rectangular-based selection indicators). The non-rectangular-based selection indicator is drawn by the computer system to match or appear to match (or substantially match or appear to substantially match) the orientation of text portion 652 in live preview 630 (e.g., as if selection indicator 696 were a rectangular-based selection indicator on a surface containing text portion 642, but from the perspective of the surface that is aligned with the text portion 642). Figure 6X to Figure 6Z 642). As described above, Figure 6Y The selection indicator 696 is not based on a rectangle because it is determined that the text portion 652 is not aligned with the computer system 600 (e.g., with the Figure 6V to Figure 6U The selection indicator 696 is based on a rectangular selection indicator (e.g., oriented opposite to the display of the computer system 600). Figure 6Y , computer system 600 detects swipe input 650y that progresses from the word "and" to the word "synthetic" in text portion 652. Notably, swipe input 650y moves in a diagonal direction relative to computer system 600, but progresses along a line of words in text portion 652. In some embodiments, even though the edge of selection indicator 696 is displayed diagonally relative to the edge of the computer system display area, the computer system positions part or all of the edge of selection indicator 696 at a position determined to be parallel or perpendicular to the line of text in text portion 652. In some embodiments, as the angle of the camera changes relative to the surface containing text portion 652, the angle of the edge of selection indicator 696 changes in the display area so as to maintain the edge at a position determined to be parallel or perpendicular to the line of text in text portion 642.
[0291] like Figure 6ZAs shown, in response to detecting swipe input 650y, computer system 600 expands selection indicator 696 in the direction of swipe input 650y so that selection indicator 696 surrounds a subset of text portion 652 from the word "synthesized" to the last period in text portion 652 (e.g., when included in the portion of text). Even though selection indicator 696 has been expanded, selection indicator 696 is still displayed as a non-rectangle-based selection indicator. In addition, after computer system 600 no longer detects swipe input 650y, selection indicator 696 continues to be displayed around the text portion.
[0292] FIG. 7A to FIG. 7L An exemplary user interface for managing visual indicators of visual content in media using a computer system according to some embodiments is shown. The user interface in these figures is used to illustrate the following description of the visual indicators including Fig. 9 The process of the process.
[0293] Fig. 7A The computer system 600 is shown simultaneously displaying a media gallery user interface 710 including thumbnail media representations 712 and a gallery area 702. The thumbnail media representations 712 include thumbnail media representations 712a-712c, wherein each of the thumbnail media representations 712a-712c represents a different media item (e.g., media items captured at different time instances). The gallery area 702 includes a gallery control 702a (e.g., which, when selected, causes the computer system 600 to display the thumbnail media representations 712), a "for you" control 702b (e.g., which, when selected, causes the computer system 600 to display thumbnail representations of dynamically generated media items based on user preferences), an album control 702c (e.g., which, when selected, causes the computer system 600 to display thumbnail album representations that each represent a collection of media items), and a search control 702d (e.g., which, when selected, causes the computer system 600 to display a search user interface that includes one or more controls for searching for media items). Fig. 7A , the gallery control 702a has been selected (e.g., as indicated by the gallery control 702a being bold). Fig. 7A , computer system 600 detects a tap input 750a on thumbnail media representation 712a.
[0294] like Figure 7BAs shown, in response to detecting tap input 750a, computer system 600 displays media viewer user interface 720 and stops displaying media gallery user interface 710. Media viewer user interface 720 includes media viewer area 724 located between application control area 722 and application control area 726. Media viewer area 724 includes enlarged representation 724a, which represents the same media item as thumbnail media representation 712a. Media viewer user interface 720 is substantially free of controls, while application control area 722 and application control area 726 are substantially covered with controls.
[0295] The enlarged representation 724a includes a tag 642, which includes a text portion 642a (e.g., "Dog Lost Notice") and a text portion 642b (e.g., a text paragraph beginning with "cute"), as described above with respect to Figure 6B The text of text portions 642a-642b is not visually prominent, and the text of text portions 642a-642b is small and cannot be easily read by a user viewing computer system 600. In addition, enlarged representation 724a includes a person 740 standing in front of the tree. Person 740 is wearing a hat that includes the word "brand" (e.g., text portion 742).
[0296] Application controls area 722 optionally includes an indicator of the time at which the enlarged representation of the currently displayed media is taken (e.g., Figure 7B 7:54 in the display) (e.g., enlarged representation 724a), a cellular signal status indicator 720a indicating the status of a cellular signal, and a battery charge status indicator 720b indicating the remaining battery life status of computer system 600. Application control area 722 also includes a back control 722a (e.g., which, when selected, causes computer system 600 to redisplay media gallery user interface 710) and an edit control 722b (e.g., which, when selected, causes computer system 600 to display a media editing user interface that includes one or more controls for editing a representation of a media item represented by currently displayed enlarged representation 724a).
[0297] Application control area 726 includes some of thumbnail media representations 712 (e.g., 712a-712c) displayed in a single row. Because enlarged representation 724a is displayed in media viewer area 724, thumbnail media representation 712a is displayed as being selected. Specifically, thumbnail media representation 712a is displayed as being in the middle by being displayed with space with other thumbnails (e.g., 712b and 712c). Figure 7BIn addition, the application control area 726 includes a send control 726b (e.g., which, when selected, causes the computer system 600 to initiate a process for transmitting the media item represented by the enlarged media representation), a favorites control 726c (e.g., which, when selected, causes the computer system 600 to mark / unmark the media item represented by the enlarged representation 724a as favorite media), and a recycle bin control 726d (e.g., which, when selected, causes the computer system 600 to delete (or initiate a deletion process) the media item represented by the enlarged representation 724a). Figure 7B , computer system 600 detects (eg, at and / or pointing to a location on a display of computer system 600 corresponding to the media viewer area) expand input 750b on media viewer area 724.
[0298] like Figure 7C As shown, in response to detecting the expansion input 750b, the computer system 600 updates the magnified representation 724a to reflect the change in zoom level, such that Figure 7C The enlarged representation 724a is displayed in Figure 7B The enlarged representation 724a is displayed at a greater zoom level. At the increased zoom level, Figure 7C The text portion 642a-642b is Figure 7B The text portions 642a-642b of the text portion 642a-642b are larger and more visually prominent (e.g., larger, more readable). In addition to updating the enlarged representation 724a, the computer system 600 also expands the Figure 7B The media viewer area 724 makes Figure 7B The enlarged representation 724a occupies the application control areas 722 and 726 previously in Fig. 7A The portion of the display that is occupied by .
[0299] exist Figure 7C In, confirm Figure 7C The text of text portion 642a and the text of text portion 642b do not individually satisfy the prominence criteria set (e.g., using the above description of FIG. 6A to FIG. 6C Thus, the computer system 600 does not display a display corresponding to (e.g., surrounding) Figure 7B In addition, because the text of the text portions 642a-642b does not meet the prominence criteria set, the computer system 600 does not display the text management control 680 (e.g., as described above with respect to Figure 6B described above).
[0300] In some embodiments, the set of prominence criteria includes criteria that are satisfied when it is determined that one or more of the text portions 642a-642b includes text that occupies a predetermined amount of space (e.g., 10% to 100%) of the enlarged representation 724a. In some embodiments, the set of prominence criteria includes criteria that are satisfied when it is determined that one or more of the portions 642a-642b includes text that is located at or near a predetermined location (e.g., a center location) of the enlarged representation 724a. In some embodiments, the set of prominence criteria includes criteria that are satisfied when it is determined that one or more of the text portions 642a-642b includes text that is of a particular text type (e.g., an email, phone number, address, QR code, etc.) (e.g., as described above with respect to FIG. 6M to FIG. 6T In some embodiments, the set of prominence criteria includes criteria that are met when it is determined that one or more of the text portions 642a-642b includes text that is relevant to the context of the enlarged representation 724a (e.g., the text meets a relevance threshold (e.g., the computer system 600 determines that the text is 90%, 95%, 99% relevant)).
[0301] exist Figure 7C In , it is determined that the main subject of the enlarged representation 724a is the tag 642. That is, the context of the enlarged representation 724a is the content displayed within the tag 642. Figure 7C , further determines that text portion 742 (e.g., "Brand") is not relevant because it appears on the hat of person 740 and is therefore not relevant to the context of the content displayed in enlarged representation 724a. In some embodiments, computer system 600 determines that text portion 742 is not relevant to the context of the content displayed in enlarged representation 724a because text portion 742 is displayed on a person or something on a person in enlarged representation 724a.
[0302] Because text portion 742 is determined to be irrelevant, it is determined that text portion 742 does not meet the set of prominence criteria. It is worth noting that even though text portion 742 has larger text than text portions 642a-642b, it is determined that text portion 742 does not meet the set of prominence criteria. Figure 7C As shown, computer system 600 does not display one or more brackets around text portion 742 ("Brand") because text portion 742 does not meet the set of prominence criteria (e.g., due to a determination that text portion 742 is not relevant to the context of enlarged representation 724a). Figure 7C , the computer system 600 detects a tap input 750c on the text portion 742.
[0303] like Fig.7D As shown, in response to detecting the tap input 750c, the computer system 600 maintains the display of the enlarged representation 724a, as shown in FIG. Figure 7C As shown. Fig.7D , the computer system 600 does not update the display of the enlarged representation 724a to indicate that the text portion 742 is selected because it is determined that the text portion 742 does not meet the prominence criteria set (e.g., as described above with respect to Figure 7C Additionally, computer system 600 does not update the display of magnified representation 724a to indicate that text portion 742 is selected because the text management controls are not displayed and selected (e.g., unlike computer system 600 updating the display of magnified representation 724a as described above). Figures 6J to 6L In addition, because the computer system 600 does not update Fig.7D , so the text portions 642a-642b continue to not meet the prominence criteria set. Fig.7D As shown, computer system 600 does not display the brackets corresponding to text portion 642a or 642b. Fig.7D , the computer system 600 detects an expansion input 750d in the media viewer area 724. In some embodiments, instead of the expansion input 750d, the computer system 600 detects a corresponding translation (e.g., translation) Fig.7D The enlargement shown in represents the requested directional swipe of 724a.
[0304] like Fig. 7E As shown, in response to detecting the expansion input 750d, the computer system 600 updates the magnified representation 724a to reflect the change in zoom level, such that Fig. 7E The enlarged representation 724a is displayed in Fig.7D The enlarged representation 724a is shown at a greater zoom level. Fig. 7E , it is determined that the text of text portion 642a satisfies the set of prominence standards, but the text of text portion 642b does not satisfy the set of prominence standards. As a result, the computer system 600 displays bracket 736a at a location corresponding to the location of text portion 642a (e.g., around text portion 642a). However, the computer system 600 does not display bracket 736a or any other bracket at a location corresponding to the location of text portion 642b (e.g., because the text of text portion 642b does not satisfy the set of prominence standards). Notably, even if text portion 742 has larger text than text portions 642a-642b, it is determined that text portion 742 (e.g., "Brand") continues to not satisfy the set of prominence standards (e.g., because text portion 742 is not relevant). In some embodiments, when the computer system 600 detects a directional swipe in place of the expansion input 750d, the computer system 600 translates the enlarged representation 724a so that a different portion of the enlarged representation 724a is displayed in response to receiving the expansion input 750d.
[0305] like Fig. 7E As shown, because it is determined that the text of text portion 642a satisfies the set of prominence criteria, computer system 600 displays text management control 680. Text management control 680 is displayed in an inactive state (e.g., as shown by text management control 680 not being bolded) because text management control 680 has not been selected (e.g., input directed to the text management control has not been detected). Fig. 7E , computer system 600 detects expand input 750 e in media viewer area 724 .
[0306] like Figure 7F As shown, in response to detecting the expansion input 750e, the computer system 600 updates the display of the enlarged representation 724a to reflect the change in zoom level, such that Figure 7F The enlarged representation 724a is displayed in Fig. 7E The enlarged representation 724a is shown at a greater zoom level. Figure 7F , it is determined that the text of text portion 642a satisfies the prominence standard set, and the text of text portion 642b satisfies the prominence standard set. Figure 6C As shown, brackets 636a are displayed around the entirety of the two text portions 642a-642b. Figure 7F , even though text portion 742 has larger text than text portions 642a-642b, it is determined that text portion 742 (e.g., "Brand") continues to fail to meet the set of prominence criteria (e.g., because text portion 742 is not relevant). Figure 7F As shown, the computer system 600 displays a text type indicator 638a below "123 Main Street" to indicate that an address has been detected, and displays a text type indicator 638b below "123-4567" to indicate that a telephone number has been detected (e.g., using the text type indicator 638b described above with respect to the telephone number). Figure 6C In some embodiments, the computer system 600 displays a plurality of brackets, one bracket around the text portion 642a and another bracket around the text portion 642b, and / or other combinations of brackets (e.g., using the above description of FIG. 6A to FIG. 6M In some embodiments (e.g., reviewing Fig. 7E ), the computer system 600 displays the text type indicator below the text portion, regardless of whether the text portion to which the text type indicator belongs meets the prominence criteria set. Figure 7F , the computer system 600 detects an expand input 750 f in the media viewer area 724 .
[0307] like Figure 7GAs shown, in response to detecting the expansion input 750f, the computer system 600 updates the magnified representation 724a to reflect the change in zoom level, such that Figure 7G The enlarged representation 724a is displayed in Figure 7F The enlarged representation 724a is displayed at a larger zoom level. In some embodiments, Figure 7G As shown, the input showing the enlarged representation 724a corresponds to a directional swipe input.
[0308] like Figure 7G As shown, enlarged representation 724a includes a subset of text portion 642a and a subset of text portion 642b. As a result of determining that the entire text portion 642a-642b no longer meets the set of prominence criteria (e.g., and / or enlarged representation 724a includes only text portion 642a and a subset of text portion 642b), computer system 600 stops displaying brackets 636a around the entire text portion 642a and text portion 642b. Figure 7G , a subset of the text of text portion 642b (e.g., the phone number "123-4567") is determined to satisfy the set of prominence criteria (e.g., while another subset of the text of text portion 642b does not satisfy the criteria). In some embodiments, because the computer system 600 previously detected input (e.g., when viewing the FIG. 7A to FIG. 7G The computer system 600 has continued to zoom in near the phone number) determines that the user intends to interact with or view the phone number, so it determines that a subset of the text portion 642b meets the set of prominence criteria.
[0309] In some embodiments, determining Figure 7G A subset of text portion 642a that meets the set of prominence criteria is included (eg, "dog"). In response to this determination, computer system 600 displays a set of brackets around the subset of text portion 642a concurrently with brackets 736c.
[0310] like Figure 7G As shown, the computer system 600 displays only a portion of the address "123 Main Street". Therefore, the computer system 600 stops displaying the text type indication 638a. In some embodiments, the computer system 600 remains on. Figure 7G A text type indicator 638a is displayed below the portion of the address "123 Main Street" displayed in FIG. In some embodiments, the computer system 600 determines that the portion of the address does not meet the set of prominence criteria because another portion of the address is not displayed. Figure 7G , the computer system 600 detects a right swipe 750g in the media viewer area 724.
[0311] like Figure 7HAs shown, in response to detecting the right swipe 750g, the computer system 600 translates the enlarged representation 724a in the right direction. The enlarged representation 724a is translated so that Figure 7G The rightmost portion of the text portions 642a-642b shown ceases to be displayed by the computer system 600, and the leftmost portion of the text portions 642a-642b is displayed by Figure 7H The computer system 600 in FIG. Figure 7H As shown, the computer system 600 does not display the entire telephone number (e.g., 123-4567) and stops displaying the brackets 736c and the text type indicator 638b. In some embodiments, a portion of the text type indicator 638b remains displayed. Figure 7H Below the portion of the phone number that continues to display (for example, "12"). Figure 7H In the example, the computer system 600 displays Figure 7H ) and redisplays the text type indication 638a below "123 Main Street" to indicate to the user that an address has been detected.
[0312] exist Figure 7H In some embodiments, the computer system 600 determines that another subset of the text portion 642b (e.g., "Reward $1000") satisfies the set of prominence criteria (e.g., no other subset of the text portion 642b satisfies the set of prominence criteria). Because the computer system 600 determines that another subset of the text portion 642b satisfies the set of prominence criteria, the computer system 600 displays brackets 736d around the another subset of the text portion 642b "Reward $1000". In some embodiments, the computer system 600 determines that another subset of the text portion 642b (e.g., "Reward $1000") is the most relevant text to display based on the context of the displayed content of the enlarged representation 724a. In some embodiments, the computer system 600 determines that another subset of the text portion 642b (e.g., "Reward $1000") is the most relevant text to display based on the context of the displayed content of the enlarged representation 724a. Figure 7H A subset of text portion 642a that meets the set of prominence criteria is included (e.g., "LOST"). In some embodiments, in response to this determination, computer system 600 displays a corresponding set of brackets around the subset of text portion 642a simultaneously with brackets 736e. Figure 7H , the computer system 600 detects a tap input 750h on the text management control 680.
[0313] like Fig.7IAs shown, in response to detecting the tap input 750h, the computer system 600 displays text management options 682, which include a copy option 682a (e.g., when selected, the computer system 600 copies the text enclosed by the brackets 736d), a select all option 682b (e.g., when selected, the computer system 600 selects all text enclosed by the brackets 736d), a find option 682c (e.g., when selected, the computer system finds the text enclosed by the brackets 736d by searching (e.g., web search, dictionary search)), and a share option 682d (e.g., when selected, the computer system 600 initiates a process of sharing the text enclosed by the brackets 736d). In some embodiments, the various components of the text management options 682 are as described above with respect to FIG. 6A to FIG. 6M In some embodiments, the computer system 600 displays a plurality of text management options, wherein each respective text management option corresponds to a respective text portion surrounded by a respective pair of brackets. In some embodiments, selecting a respective text management option allows the user to manage the text portion corresponding to the respective text management option.
[0314] like Fig.7I As shown, computer system 600 displays text management control 680 as being activated (e.g., as shown by text management control 680 being bolded). Fig.7I , the computer system 600 detects a tap input 750i on the text management control 680.
[0315] like Figure 7J As shown, in response to detecting the tap input 750i, the computer system 600 uses the above-mentioned Figure 7H One or more of the techniques described above may be used to redisplay the enlarged representation 724a. Figure 7J , the computer system 600 detects a downward swipe input 750j in the media viewer area 724.
[0316] like Figure 7K As shown, in response to detecting downward swipe input 750j, computer system 600 translates media viewer area 724 downward (e.g., based on the swipe input) so that text portion 642b ceases to be displayed and the computer system displays only a subset of text portion 642a. Figure 7K , it is determined that a subset of text portion 642a (eg, "lost") satisfies the prominence criteria set. Because the subset of text portion 642a does satisfy the prominence criteria set, computer system 600 displays brackets 736e around the subset of text portion 642a.
[0317] exist Figure 7K In the example, computer system 600 does not display bracket 736d because text portion 642b is in Figure 7Kis not shown as part of the enlarged representation 724a. Figure 7K , computer system 600 detects pinch input 750k in media viewer area 724.
[0318] like Figure 7L As shown, in response to detecting the pinch input 750k, the computer system 600 updates the zoomed-in representation 724a to reflect the change in zoom level (e.g., the zoom level is reduced), so that the zoomed-in representation 724a is updated with the zoomed-in representation 724b. Figure 7K The zoom level of the display shown in 724a is compared to Figure 7L The enlarged representation 724a is shown at a reduced zoom level. Figure 7L , it is determined that text portion 642a and text portion 642b do not satisfy the set of prominence criteria. Therefore (e.g., because it is determined that text portion 642a and text portion 642b do not satisfy the set of prominence criteria), computer system 600 does not display (and / or stops displaying) text management controls 680 and / or any brackets surrounding text portions 642a-642b.
[0319] Although the above FIG. 7A to FIG. 7L The techniques discussed are discussed in the context of the computer system 600 displaying representations of previously captured media and a media viewer user interface, but the techniques described above with respect to media viewing may also be applied when the computer system 600 displays previously captured media and a media viewer user interface. Figures 6A to 6Z In addition, the above FIG. 7A to FIG. 7L The discussed techniques may also be applied to computer system 600 to display a live preview (e.g., a representation of the field of view of one or more cameras before the media has been captured) (such as FIG. 6A to FIG. 6M 's live preview 630) and in the context of the camera user interface.
[0320] Although the above Figures 6A to 6Z The techniques discussed are discussed in the context of the computer system 600 displaying a live preview and a camera user interface, but the techniques described above with respect to the present invention are also applicable when the computer system 600 displays a live preview and a camera user interface. FIG. 7A to FIG. 7L One or more technologies discussed. In addition, Figures 6A to 6Z The discussed techniques may also be applied in the context of the computer system 600 displaying previously captured media (such as the enlarged representation of the media 724a) and a media viewer user interface.
[0321] Figure 8800 is a flowchart illustrating a method for managing visual content in media using a computer system according to some embodiments. Method 800 is performed at a computer system (e.g., 100, 300, 500) in communication with a display generation component. Some operations in method 800 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.
[0322] As described below, method 800 provides an intuitive way to manage visual content in media. The method reduces the cognitive burden of managing visual content in media for users, thereby creating a more efficient human-computer interface. For battery-powered computing devices, enabling users to manage visual content in media faster and more efficiently saves power and increases the time interval between battery charges.
[0323] Method 800 is performed at a computer system (e.g., 600) (e.g., a smartphone, a desktop computer, a laptop computer, a tablet computer) in communication with a display generation component (e.g., a display controller, a touch-sensitive display system). In some embodiments, the computer system communicates with one or more input devices (e.g., a touch-sensitive surface) and / or a first camera of one or more cameras (e.g., one or more cameras on the same side or different sides of the computer system (e.g., dual cameras, triple cameras, quad cameras, etc.) (e.g., front cameras, rear cameras)).
[0324] The computer system displays (802) a camera user interface (e.g., a media capture user interface, a media viewing user interface, a media editing user interface) via a display generation component, which includes simultaneously displaying representations of media (e.g., photo media, video media) (e.g., 630) (e.g., live media, live previews (e.g., media corresponding to representations of a field of view of one or more cameras that have not yet been captured (e.g., a current field of view) (e.g., in response to detecting a request to capture media (e.g., detecting a selection shutter enable indication)), previously captured media (e.g., media corresponding to representations of a field of view of one or more cameras that have already been captured (e.g., a previous field of view)), media that has been saved and can be accessed by a user at a later time, media representations displayed in response to receiving a gesture regarding a thumbnail representation of media (e.g., in a media gallery)), and media capture enable indications (e.g., 610) (e.g., user interface objects).
[0325] When (804) a media representation (e.g., 630) and a media capture affordance representation (e.g., 610) (e.g., a user interface object) are displayed simultaneously, based on determining that a corresponding set of criteria is satisfied, wherein the corresponding set of criteria includes criteria that are satisfied when corresponding text (e.g., 642a, 642b) (e.g., one or more characters represented in the media) is detected in the media representation (e.g., 630), the computer system displays (806) (e.g., simultaneously with the media representation) (e.g., in the user interface) a first user interface object (e.g., 680) corresponding to one or more text management operations (e.g., simultaneously with the media representation and / or the first user interface object) via a display generation component (e.g., 680). In some embodiments, the plurality of options (e.g., 672, 682, 692) include one or more options to copy the corresponding text (e.g., 682a), select the corresponding text (e.g., 682b), find the corresponding text (e.g., 682c), share the corresponding text (e.g., 682d), and convert the corresponding text.
[0326] When (804) a media representation (e.g., 630) and a media capture enable representation (e.g., 610) (e.g., user interface objects) are displayed simultaneously, the computer system abandons displaying (808) the first user interface object based on determining that a corresponding set of criteria is not met.
[0327] While displaying a media representation (e.g., 630) (e.g., when displaying the media representation and the media capture affordance representation and the first user interface object simultaneously), the computer system detects (810) a first input (e.g., 650a, 650e, 650g, 650u) directed to the camera user interface (e.g., 602, 604, 606) (e.g., a mouse / trackpad click / activation, a keyboard input, a scroll wheel input, a hover gesture, a tap gesture, a swipe gesture). In some embodiments, the first input is a non-tap gesture (e.g., a rotate gesture and / or a press-and-hold gesture).
[0328] In response to (812) detecting a first input (650a, 650e, 650g, 650u) (e.g., a first gesture) directed toward a camera user interface and based on determining that the first input (e.g., 650a) corresponds to a selection of a media capture enable representation (e.g., 610) (e.g., a gesture directed toward the media capture enable representation, a gesture at a location corresponding to the media capture enable representation), the computer system initiates (814) capture of media to be added to a media library (e.g., 612) associated with the computer system (e.g., 600) (e.g., without displaying an option to manage corresponding text).
[0329] In response to (812) detecting a first input (650a, 650e, 650g, 650u) directed to the camera user interface (e.g., a first gesture) and based on determining that the first input (e.g., 650e, 650g, 650u) corresponds to a selection of a first user interface object (e.g., 680), the computer system displays (816) via a display generation component a plurality of options (e.g., 672, 682, 692) for managing the corresponding text (e.g., not initiating capture of media to be added to a media library (e.g., as shown in 624) associated with the computer system (e.g., 600). In some embodiments, the plurality of options are displayed adjacent to the corresponding text (e.g., included in the media representation). In some embodiments, the plurality of options (e.g., 672, 682, 692) include copying the corresponding text (e.g., 682a), selecting the corresponding text (e.g., 682b), finding the corresponding text (e.g., 682c), sharing the corresponding text (e.g., 682d), and converting the corresponding text (e.g., as described above with respect to Fig. 6F In some embodiments, based on determining that the first input (e.g., 650e, 650g, 650u) corresponds to a selection of the first user interface object (e.g., 680), the first user interface object is in an active state (e.g., transitioned from being displayed in an inactive state to an active state (e.g., as described above with respect to Fig. 6F ), wherein a first user interface object displayed in an active state (e.g., Fig. 6F 680) (e.g., bold, pressed state / appearance) has the same properties as when the first user interface object is displayed in an inactive state (e.g., Figure 6G In some embodiments, based on determining that the first input (e.g., 650a) corresponds to a selection of the media capture enable representation (e.g., 610), the first user interface object (e.g., 680) is in an inactive state (e.g., transitions from being displayed in an inactive state to an active state). In some embodiments, based on determining that the first input (e.g., 650e, 650g, 650u) corresponds to a selection of the first user interface object (e.g., 680) and the first user interface object is in an inactive state (e.g., transitions from being displayed in an inactive state to an active state). Fig. 6E In some embodiments, based on determining that the first input corresponds to a selection of the first user interface object (e.g., 680) and the first user interface object is active (e.g., Fig. 6F 680), the computer system abandons multiple options (e.g., 672, 682, 692) for displaying management of corresponding text (e.g., as described above with reference to Fig. 6FIn some embodiments, based on determining that the first input (650a) corresponds to a selection of a media capture enable indication, the first user interface object (e.g., 610) continues to be displayed. In some embodiments, based on determining that the first input (e.g., 650a) corresponds to a selection of a media capture enable indication (e.g., 610) or a selection of a first user interface object (e.g., 680), one or more interface objects (e.g., a media capture enable indication (e.g., 610), a camera settings enable indication, a camera mode enable indication (e.g., 620)) cease to be displayed or are displayed as inactive (e.g., dimmed) in the camera user interface (e.g., not responsive to user input on the corresponding object). Displaying multiple options for managing corresponding text based on determining that the first input corresponds to a selection of the first user interface object provides the user with the ability to quickly and efficiently manage the corresponding text without cluttering the user interface with additional user interface objects. Providing additional control over the system without cluttering the UI with additional displayed controls enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the system), which in turn reduces power usage and extends the battery life of the system by enabling the user to use the system more quickly and efficiently. Displaying multiple options for managing corresponding text when certain specified conditions are met (e.g., based on whether a first input corresponds to a selection of a first user interface object) automatically provides the user with various options for different ways to manage the corresponding text. Performing operations when a set of conditions have been met without further user input enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the system), which in turn reduces power usage and extends the battery life of the system by enabling the user to use the system more quickly and efficiently.
[0330] In some embodiments, the first input (e.g., 650e, 650g, 650u) is a tap gesture (e.g., a tap input) directed toward a first user interface object (e.g., 672, 682, 692) (e.g., a gesture at a location corresponding to the first user interface object).
[0331] In some embodiments, the media representation (e.g., 630) includes corresponding text (e.g., when the corresponding text is displayed when the media representation is displayed). In some embodiments, after detecting the first input (e.g., 650e, 650g, 650u) (and when an indication that the text is selected is not displayed and / or after detecting an input / gesture corresponding to a selection of a first user interface object and / or when the first user interface object is displayed as being active and / or when multiple options for managing the corresponding text are displayed), the computer system detects a second input (e.g., 650j) directed to the camera user interface (e.g., a tap gesture and / or a swipe gesture). In some embodiments, the second input is a non-tap gesture (e.g., a rotation gesture and / or a press-and-hold gesture). In some embodiments, the first input is a non-swipe gesture (e.g., a rotation gesture, a press-and-hold gesture, a mouse / trackpad click / activation, a keyboard input, a scroll wheel input, a hover gesture, and / or a tap gesture). In some embodiments, in response to detecting a second input (e.g., 650j) directed toward the camera user interface and based on determining that the second input corresponds to a selection of the first one or more portions of the corresponding text, the computer system displays an indication (e.g., 642a, 642b) that the first one or more portions (e.g., 642b) of the corresponding text (e.g., 642a, 642b) are selected. Figure 6K In some embodiments, the indication is displayed around the corresponding text. In some embodiments, as part of displaying an indication that one or more portions of the corresponding text are selected, the computer system emphasizes (e.g., highlights, underlines, bolds, increases the size of) one or more portions of the corresponding text. In some embodiments, when displaying an indication that a first portion of the corresponding text is selected, the computer system does not display an indication that a second portion of the corresponding text (e.g., different from the first portion) is selected. In some embodiments, based on determining that the second input (650j) corresponds to a selection of one or more portions of the corresponding text (e.g., 642a), and when the first user interface (e.g., 680) object is displayed as being in an active state (e.g., as described above with respect to Fig. 6F 680), the computer system displays an indication that the first one or more portions (e.g., 642a) of the corresponding text are selected (e.g., as described above with respect to Figure 6K and Figure 6L In some embodiments, based on determining that the second input (e.g., 650j) corresponds to a selection of one or more portions of the corresponding text (e.g., 642), and when the first user interface object (e.g., 680) is displayed as being in an inactive state (e.g., as described above with respect to Figure 6G described above) and / or not shown (e.g., as described above with respect to Figure 7C , Figure 7G), the computer system does not (e.g., abandons displaying) displaying the first one or more portions (e.g., 642a) of the corresponding text is selected (e.g., as described above with respect to Figure 7C and Figure 7G The display of the indication that the first one or more portions of the corresponding text are selected provides visual feedback to the user as to whether the text has been selected and which text is currently selected. Providing improved visual feedback to the user enhances the operability of the computer system and makes the computer system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the computer system), which in turn reduces power usage and extends the battery life of the computer system by enabling the user to use the computer system more quickly and efficiently. In response to detecting the second input and based on determining that the second input corresponds to a selection of the first one or more portions of the corresponding text, displaying the indication that the first one or more portions of the corresponding text are selected provides the user with additional control for selecting text without cluttering the user interface with additional user interface objects. Providing additional control to the system without cluttering the UI with additional displayed controls enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the system), which in turn reduces power usage and extends the battery life of the system by enabling the user to use the system more quickly and efficiently.
[0332] In some embodiments, the second input (e.g., 650j) (e.g., a second gesture) is a tap gesture (e.g., pointing to one or more portions of the corresponding text) or a swipe gesture (e.g., pointing to one or more portions of the corresponding text). In some embodiments, the first input is a first input type, and the second input is a second input type different from the first input type.
[0333] In some embodiments, in response to detecting a first input directed toward a camera user interface (e.g., 650e, 650g, 650u) and based on determining that the first input (e.g., 650e, 650g, 650u) corresponds to a selection of a first user interface object (e.g., 680), the computer system displays instructions (e.g., 684) (e.g., not previously displayed prior to detecting the first input) (e.g., instructions) regarding (e.g., how to) select text included in a media representation (e.g., 630) (e.g., instructions indicating one or more inputs that will cause the computer system to display the text being selected). In some embodiments, in response to detecting a first input directed toward a camera user interface and based on determining that the first input corresponds to a selection of a media capture affordance, the computer system does not display instructions regarding (e.g., how to) select text included in the media representation. In some embodiments, instructions (e.g., 684) regarding (e.g., how to) select text included in the media representation are displayed simultaneously with a plurality of options (e.g., 682a, 682b, 682c, 682d) for managing the corresponding text (e.g., 642b). In some embodiments, when the first user interface object (e.g., 680) is in an active state (e.g., as described above with respect to Fig. 6F 680) is displayed, and an indication (e.g., 684) about the selected text is displayed, and when the first user interface object is in an inactive state (e.g., as described above with respect to Figure 6G 680) is displayed without displaying instructions (e.g., 684) about selecting text. Displaying instructions about how to select text included in the media representation provides the user with visual feedback about the steps required to select the text the user wishes to select. Providing improved visual feedback to the user enhances the operability of the computer system and makes the computer system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the computer system), which in turn reduces power usage and extends the battery life of the computer system by enabling the user to use the computer system more quickly and efficiently.
[0334] In some embodiments, before detecting the first input (e.g., 650e, 650g, 650u), the first appearance (e.g., Fig. 6E In some embodiments, in response to detecting a first input directed to a camera user interface (e.g., 650e, 650g, 650u) and based on determining that the first input (e.g., 650e, 650g, 650u) corresponds to a selection of a first user interface object (e.g., 680), the computer system displays the media representation (e.g., 630) with a different appearance than the first appearance (e.g., Fig. 6E 630) of the second appearance (e.g., Fig. 6F In some embodiments, the computer system displays the media representation (e.g., 630) (e.g., with a second blur value, a second dim value) (e.g., when the text is selected (e.g., in response to detecting a second input). In some embodiments, as part of displaying the media representation in a second appearance different from the first appearance, the computer system blurs and / or dims at least a portion of the media representation. In some embodiments, in response to detecting a first input directed to a camera user interface and based on determining that the first input corresponds to a selection of a media capture enable representation, the computer system displays the media representation in a third appearance different from the second appearance. In some embodiments, the third appearance is the first appearance. In some embodiments, the third appearance (e.g., black, a solid color) is different from the first appearance (e.g., a blurred version of the field of view of one or more cameras). In some embodiments, the media representation having the third appearance is displayed for a predetermined time period (e.g., less than one second), and the predetermined time period is not based on whether the first user interface object is displayed in an active state. In some embodiments, when the first input is detected, the computer system displays the media representation in a third appearance different from the second appearance. When a user interface object is displayed in an active state, a media representation having a second appearance is displayed, and when a first user interface object is displayed in an inactive state, the media representation having the second appearance is not displayed. In some embodiments, when the first user interface object is displayed in an active state, the media representation having the first appearance is not displayed, and when the first user interface object is displayed in an inactive state, the media representation having the first appearance is displayed. Displaying the media representation in a second appearance different from the first appearance of the representation in response to detecting a first input provides a user with visual feedback as to whether the user has selected text by de-emphasizing less relevant portions of the media representation. Providing improved visual feedback to the user enhances the operability of the computer system and makes the computer system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the computer system), which in turn reduces power usage and extends the battery life of the computer system by enabling the user to use the computer system more quickly and efficiently.
[0335] In some embodiments, the media representation (e.g., 630) includes the corresponding text (e.g., 642a, 642b) (e.g., where the corresponding text is displayed when the media representation is displayed). In some embodiments, based on determining that the corresponding set of standards is met, the computer system emphasizes (e.g., highlights, displays an object (e.g., a shape, surrounding brackets (e.g., yellow brackets)), underlines, enlarges) a second one or more portions of the corresponding text (e.g., 642a, 642b). In some embodiments, based on determining that the corresponding set of standards is met, the computer system emphasizes the second one or more portions of the corresponding text while de-emphasizing another portion of the corresponding text and / or another portion of the media representation that does not include the second one or more portions of the corresponding text. Emphasizing the second one or more portions of the corresponding text provides the user with improved visual feedback as to whether a particular portion of the corresponding text included in the media meets the corresponding set of standards. Providing improved visual feedback to the user enhances the operability of the computer system and makes the computer system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the computer system), which in turn reduces power usage and extends the battery life of the computer system by enabling the user to use the computer system more quickly and efficiently.
[0336] In some embodiments, as part of emphasizing the second one or more portions of the corresponding text, the computer system displays an indication that the corresponding text has been detected (e.g., 636a, 636b, 736c, 736d). In some embodiments, when the second one or more portions of the corresponding text (e.g., 642a, 642b) are emphasized, the computer system receives a second representation (e.g., media that is the same or different from the media represented by the media representation) of the displayed media. Fig. 6F In some embodiments, the request to display the second representation of the media is detected when one or more changes in the field of view of one or more cameras in communication with the computer system are detected. In some embodiments, the request to display the second representation of the media is detected when a request to zoom out / or translate the media representation is detected. In some embodiments, the request to display the second representation of the media is detected when the computer system is moved.
[0337] In some embodiments, in response to receiving a second representation (e.g., including a portion of the corresponding text and / or a second corresponding text different from the corresponding text) of the display media (e.g., Fig. 6FIn response to a request to display a second representation of the media (e.g., 630 in the example), the computer system converts (e.g., moves) an indication that the corresponding text has been detected (e.g., 636a, 636b, 736c, 736d) from a first position in the camera user interface to a second position in the camera user interface. In some embodiments, in response to receiving a request to display a second representation of the media, the indication that the corresponding text has been selected is modified to surround a portion of the text that is different from the portion that was surrounded before the request to display the second representation of the media was received. Converting the indication that the corresponding text has been detected from the first position in the camera user interface to the second position in the camera user interface in response to receiving a request to display the second representation of the media allows the user to maintain their view of the indication as the system moves between the first position and the second position. Performing operations when a set of conditions have been met without further user input enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the system), which in turn reduces power usage and extends the battery life of the system by enabling the user to use the system more quickly and efficiently.
[0338] In some embodiments, after detecting the first input (e.g., 650e, 650g, 650u) and based on determining that the first input (e.g., 650e, 650g, 650u) corresponds to a selection (e.g., 680) of the first user interface object (e.g., a first determination) (and / or when the first user interface object is displayed as being active and / or when multiple options for managing the corresponding text are displayed), the media representation (e.g., 630) includes the corresponding text (e.g., 642a, 642b) and an indication that the third one or more portions of the corresponding text (e.g., 642a, 642b) are selected. In some embodiments, the computer system receives a request to display a third representation (e.g., 630) of media (e.g., the same or different media as the media represented by the media representation). In some embodiments, the request to display the third representation of the media is detected when one or more changes in the field of view of one or more cameras in communication with the computer system are detected. In some embodiments, the request to display the third representation of the media is detected when a request to zoom in / out and / or translate the media representation is detected. In some embodiments, when the computer system is moved, a request to display a third representation of the media is detected. In some embodiments, in response to receiving a request (e.g., 650c, 650d, 750e, 750f, 750g) to display a third representation of the media (e.g., 630), the computer system displays an indication that at least a portion of the text included in the third representation of the media (e.g., 630) is selected, wherein the indication (e.g., 636a, 636b, 736c, 736d) that at least a portion of the text included in the third representation of the media (e.g., 642a, 642b) is selected is different from the indication that the third one or more portions of the corresponding text (e.g., 642a, 642b) are selected. In some embodiments, the portion of text included in the third representation of the media includes at least a portion of the text in the third one or more portions of the text. Displaying an indication that at least a portion of the text included in the third representation of the media is selected in response to receiving a request to display the third representation provides the user with an additional and efficient way to control which portions of the text are selected without cluttering the user interface. Reducing the number of inputs required to perform an operation enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user provide appropriate inputs and reducing user errors when operating / interacting with the system), which in turn reduces power usage and extends the battery life of the system by enabling the user to use the system more quickly and efficiently.
[0339] In some embodiments, after detecting the first input (e.g., 650e, 650g, 650u) and based on determining that the first input corresponds to a selection of the first user interface object (e.g., a first determination) (and / or when the first user interface object is displayed as being active and / or when multiple options for managing the corresponding text are displayed), the media representation (e.g., 630) includes the corresponding text (e.g., 642b), an indication that the fourth one or more portions of the corresponding text (e.g., 642b) are selected, and the fourth one or more portions of the corresponding text (e.g., 642b) are displayed at a third location in the camera user interface (and / or on the display). In some embodiments, the computer system detects a change in the physical environment within the field of view of one or more cameras in communication with the computer system. In some embodiments, in response to detecting a change in the physical environment within the field of view of the one or more cameras (e.g., 660a, 660b), the computer system continues to display the fourth one or more portions of the corresponding text (e.g., 642b) at the third location in the camera user interface (and / or on the display). In some embodiments, the selected text is frozen. In some embodiments, at least a portion of a fourth representation of the media is displayed (e.g., newly displayed in response to detecting a change in the physical environment) while maintaining display of a fourth one or more portions of the corresponding text. In some embodiments, the computer system freezes the selected text (e.g., and / or displays the selected text at the same location and / or at the same size) while updating the media representation (e.g., live preview) to reflect the change in the physical environment. Continuing to display the fourth one or more portions of the corresponding text at a third location in the camera user interface allows the user to maintain a view of the text that has been selected by the user as the system moves between the first point and the second point. Performing an operation when a set of conditions has been met without requiring further user input enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the system), which in turn reduces power usage and extends the battery life of the system by enabling the user to use the system more quickly and efficiently.
[0340] In some embodiments, prior to detecting a first input (e.g., 650e, 650g, 650u) directed to a camera user interface: the computer system (e.g., 600) communicates with one or more cameras; and the media representation (e.g., 630) is a representation (e.g., 630) of one or more objects in a physical environment (e.g., physical space) in the field of view of one or more cameras (e.g., live camera preview). In some embodiments, receiving a request to display a fourth representation of the media (e.g., an updated representation of the camera field of view) includes detecting a change in the camera field of view. In some embodiments, the fourth representation of the media includes a change in the camera field of view. In some embodiments, when one or more objects (e.g., non-text objects) within the field of view are moving, the media representation is updated to indicate that the one or more objects are moving. In some embodiments, the media representation is a live representation of the field of view of the camera. The media representation that displays a representation (e.g., live camera preview) of one or more objects in the physical space in the field of view of one or more cameras provides the user with greater control over the computer system (e.g., changing the field of view of the system's camera) to determine whether one or more objects in the physical space can be captured without cluttering the user interface. Providing additional controls for the system without cluttering the UI with additional displayed controls enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping users provide appropriate input and reducing user errors when operating / interacting with the system), which in turn reduces power usage and extends the battery life of the system by enabling users to use the system more quickly and efficiently.
[0341] In some embodiments, the media representation (e.g., 630) is a first representation of the media. In some embodiments, when the first user interface object is displayed, the computer system detects a request (e.g., 750k) to display a fifth representation (e.g., 630) of the media (e.g., the same or different media as the media represented by the first representation of the media). In some embodiments, the request to display the fifth representation of the media is detected when one or more changes in the field of view of one or more cameras communicating with the computer system are detected. In some embodiments, the request to display the fifth representation of the media is detected when a request to reduce / enlarge the media representation and / or translate the media representation is detected. In some embodiments, the request to display the fifth representation of the media is detected when the computer system is moved. In some embodiments, in response to detecting the request to display the fifth representation of the media (e.g., 750k) and based on determining that the corresponding set of criteria is not met (e.g., the corresponding text is not detected in the fifth representation of the media or the corresponding text is detected but not prominent enough), the computer system stops displaying the first user interface object (e.g., 680). In some embodiments, in response to detecting a request to display a fifth representation of media and based on determining that corresponding text is detected in the fifth representation of media, the computer system continues to display the first user interface object. When certain specified conditions are met, the first user interface object is stopped from being displayed (e.g., in response to detecting a request to display a fifth representation of media and based on determining that a corresponding set of criteria is not met) and an indication is automatically provided to the user whether the media representation does not contain text that has been detected by the computer system. Performing operations when a set of conditions have been met without further user input enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the system), which in turn reduces power usage and extends the battery life of the system by enabling the user to use the system more quickly and efficiently.
[0342] In some embodiments, the corresponding criteria include criteria that are met when determining that the corresponding text meets predetermined prominence criteria (e.g., the text is at a size or in a position in the media representation that indicates that the text is important and / or relevant) (e.g., based on the context of the media representation (e.g., importance / relevance based on the context of the image), based on the corresponding text occupying a certain amount of space on the displayed media representation, based on the corresponding text being in a particular position on the displayed media representation (e.g., in the middle), based on the corresponding text being a particular type of text (e.g., an email, phone number, QR code, unified access code location, etc.)) (e.g., based on the following regarding Figure 7C , FIG. 7E to FIG. 7J and Fig. 9One or more of the techniques are determined to be relevant) (e.g., showing the first user interface object when the corresponding text is on a tag and not showing the first user object when detected on clothing) (e.g., regarding how the corresponding text is displayed prominently / prominently).
[0343] In some embodiments, when displaying the media representation (e.g., 630) (and, in some embodiments, after detecting input corresponding to a selection of the first user interface object and / or when the first user interface object is displayed as being active and / or when multiple options for managing the corresponding text are displayed) and based on determining that the corresponding text (e.g., 642a-642b) includes a portion of text determined to be a corresponding text type (e.g., a phone number, an email) (e.g., based on one or more regular expression patterns corresponding to different text types), the computer system displays an indication that the corresponding text type has been detected (e.g., 638a-638b) (e.g., an indication of a data detector). In some embodiments, as part of displaying the indication that the corresponding text type has been detected, the computer system emphasizes (e.g., highlights, underlines, brackets) the portion of the text. In some embodiments, the indication that the corresponding text type has been detected is displayed near, around, etc., the portion of the text of the corresponding text type. In some embodiments, based on determining that the corresponding text does not include a portion of text having the corresponding text type (e.g., a phone number, an email), the computer system does not display (e.g., abstains from displaying) an indication that the corresponding text type has been detected. Displaying an indication that a corresponding text type has been detected in a media representation provides visual feedback to the user as to whether the media representation includes a particular text type. Providing improved visual feedback to the user enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the computer system), which in turn reduces power usage and extends the battery life of the computer system by enabling the user to use the computer system more quickly and efficiently.
[0344] In some embodiments, while displaying multiple options for managing corresponding text (e.g., 680), the computer system receives a third input (e.g., 650h) (e.g., a tap input) directed to a portion of the camera user interface that does not include the corresponding text (e.g., a dimmed or otherwise blurred portion of the media representation (e.g., a portion of the media representation that does not include the text) (and / or the dimmed portion of the camera user interface). In some embodiments, in response to receiving the third input (e.g., 650h), the computer system stops displaying the multiple options for managing the corresponding text (e.g., 680). In some embodiments, in response to receiving the third input, one or more interface objects (e.g., media capture enable representation, camera Settings affordance, camera mode affordance) and / or displaying it as active (e.g., not dimmed) (e.g., in response to user input on the corresponding object). Ceasing to display multiple options for managing corresponding text in response to receiving input directed to a portion of a camera user interface provides the user with more control over the system without cluttering the user interface with additional user interface objects. Providing additional control over the system without cluttering the UI with additional displayed controls enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the system), which in turn reduces power usage and extends the battery life of the system by enabling the user to use the system more quickly and efficiently.
[0345] In some embodiments, when the media representation (e.g., 630) and the media capture affordance representation (e.g., 610) are displayed simultaneously (e.g., before displaying the first user interface object) and based on determining that the media representation (e.g., 630) includes a first machine-readable code (e.g., a linear barcode, a matrix barcode, or a QR code), the computer system: displays the first user interface object (e.g., 680); and displays a representation of a uniform resource locator corresponding to the first machine-readable code (e.g., 668). Displaying the first user interface object and displaying the representation of the uniform resource location improves security by notifying the user of the location of the resource corresponding to the QR code before the user provides input to navigate to the resource. Providing improved security reduces unauthorized execution of security operations, which in turn reduces power usage and extends the battery life of the computer system by enabling the user to use the computer system more securely and efficiently. Displaying the first user interface object and displaying the representation of the uniform resource location when certain specified conditions are met (e.g., based on determining that the media representation includes a machine-readable code) notifies the user of the resource associated with the machine-readable code before the user selects the machine-readable code, and provides the user with the uniform resource locator corresponding to the first machine-readable code. Performing operations when a set of conditions have been met without requiring further user input enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the system), which in turn reduces power usage and extends the battery life of the system by enabling the user to use the system more quickly and efficiently.
[0346] In some embodiments, based on determining that the first input (e.g., 650u) corresponds to a selection of a first user interface object while the media representation (e.g., 630) includes a second machine-readable code (and when the machine-readable code is selected), the plurality of options (e.g., 672) for managing the corresponding text includes one or more options for managing information (e.g., a uniform resource location) corresponding to the second machine-readable code. In some embodiments, based on determining that the first input corresponds to a selection of a first user interface object while the media representation does not include a machine-readable code (and / or when the machine-readable code is not selected), the plurality of options for managing the corresponding text do not include one or more options for managing information. In some embodiments, one or more of the plurality of options for managing the displayed corresponding text when the machine-readable code is selected is different from one or more options for managing the displayed corresponding text when text that does not include a machine-readable code is selected. Including one or more options for managing information corresponding to the machine-readable code in the plurality of options based on determining that the first input corresponds to a selection of the first user interface provides the user with more control options (e.g., additional text management options) without cluttering the user interface. Providing additional controls for the system without cluttering the UI with additional displayed controls enhances the operability of the system and makes the user-system interface more efficient (e.g., by helping users provide appropriate input and reducing user errors when operating / interacting with the system), which in turn reduces power usage and extends the battery life of the system by enabling users to use the system more quickly and efficiently.
[0347] In some embodiments, the camera user interface includes multiple camera setting enable indications (e.g., 620a-620e) that can be selected to change the settings of one or more cameras (e.g., flash enable indication, timer enable indication, filter effect enable indication, aperture number enable indication, aspect ratio enable indication, live photo enable indication, etc.) (e.g., multiple user interface objects for accessing corresponding camera settings). In some embodiments, the camera user interface includes multiple camera mode enable indications (e.g., 620) (e.g., multiple user interface objects for setting corresponding camera modes). In some embodiments, multiple camera setting enable indications (e.g., 602a, 602b) are displayed simultaneously with a media capture enable indication (e.g., 610) and / or multiple camera mode enable indications (e.g., 620). In some embodiments, each camera mode (e.g., video (e.g., 620b), photo (e.g., 620c), portrait (e.g., 620b), slow motion (e.g., 620a), panorama (e.g., 620e) mode (e.g., 620)) has multiple settings (e.g., for portrait camera mode: studio lighting setting, contour lighting setting, stage lighting setting) with multiple values (e.g., light levels for each setting) for the mode (e.g., portrait mode) in which the camera (e.g., camera sensor) is operating to capture media (including post-processing that is automatically performed after capture). Thus, for example, camera modes are different from modes that do not affect how the camera operates when capturing media or do not include multiple settings (e.g., a flash mode having one setting with multiple values (e.g., inactive, active, automatic)). In some embodiments, camera modes allow a user to capture different types of media (e.g., photos or videos), and the settings for each mode can be optimized to capture a specific type of media corresponding to a specific mode (e.g., via post-processing) having specific attributes (e.g., shape (e.g., square, rectangular), speed (e.g., slow motion, time lapse), audio, video).For example, when the computer system is configured to operate in a still photo mode, one or more cameras of the computer system, when activated, utilize specific settings (e.g., a flash setting, one or more filter settings) to capture a first type of media (e.g., a rectangular photo); when the computer system is configured to operate in a square mode, one or more cameras of the computer system, when activated, utilize specific settings (e.g., a flash setting and one or more filters) to capture a second type of media (e.g., a square photo); when the computer system is configured to operate in a slow motion mode, one or more cameras of the computer system, when activated, utilize specific settings (e.g., a flash setting and one or more filters) to capture a second type of media (e.g., a square photo); When the computer system is configured to operate in portrait mode, one or more cameras of the computer system utilize specific settings (e.g., the amount of a specific type of light (e.g., stage light, studio light, contour light), aperture number, blur) to capture a fifth type of media (e.g., portrait photos (e.g., photos with blurred backgrounds)); when the computer system is configured to operate in panoramic mode, one or more cameras of the computer system utilize specific settings (e.g., zoom, the amount of field of view to be captured when moving) to capture a fourth type of media (e.g., panoramic photos (e.g., wide photos)). In some embodiments, when switching between modes, the display of the representation of the field of view changes to correspond to the type of media to be captured by the mode (e.g., when the computer system operates in still photo mode, the representation is rectangular, and when the computer system operates in square mode, the representation is square). Displaying a camera user interface that includes multiple camera setting indicators that can be selected to change the settings of one or more cameras provides the user with the ability to adjust multiple camera settings without having to navigate to various different user interfaces. Providing improved visual feedback to the user enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the computer system), which in turn reduces power usage and extends the battery life of the computer system by enabling the user to use the computer system more quickly and efficiently.
[0348] In some embodiments, the camera user interface includes causing one or more previously captured representations of media (e.g., 712) to be displayed when selected (e.g., as described above with respect to Fig. 6A and Fig. 7A In some embodiments, the affordance includes a representation of previously captured media. In some embodiments, in response to detecting the selection of the affordance (e.g., 612), a representation of media in a media library associated with the computer system (e.g., 712) is displayed (e.g., as described above with respect to Fig. 6A and Fig. 7A Displaying a camera user interface including affordances on the camera user interface provides the user with quick access to previously captured media items. Providing improved visual feedback to the user enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the computer system), which in turn reduces power usage and extends the battery life of the computer system by enabling the user to use the computer system more quickly and efficiently.
[0349] In some embodiments, the corresponding text includes a telephone number (e.g., detected in the corresponding text), and in response to detecting input directed to the telephone number, the computer system initiates a telephone call to the telephone number. In some embodiments, the corresponding text includes an email address. In some embodiments, in response to detecting input directed to an email address, the computer system launches (e.g., or opens) an email application that includes the email address (e.g., includes the email address in a "To" field) and / or automatically sends an email to the email address.
[0350] It should be noted that the process described above with respect to method 800 (eg, Figure 8 ) also applies in a similar manner to the other methods described herein. For example, method 800 optionally includes one or more features of the various methods described herein with reference to methods 900, 1100, 1300, 1500, and 1700. For example, as in method 1100 (e.g., Fig.11 ) may be displayed in a previously captured media item to identify the features present in the previously captured media item. For the sake of brevity, these details are not repeated below.
[0351] In some embodiments, one or more steps of the above method 800 may also be applied to video media representations, such as one or more live frames and / or pause frames of video media. In some embodiments, one or more steps of the above method 800 may be applied to Figures 6A to 6Z and FIG. 7A to FIG. 7L The user interfaces are media representations in user interfaces of different applications, including but not limited to user interfaces corresponding to productivity applications (e.g., a note-taking application, a spreadsheet application, and / or a task management application), a web application, a file viewer application, and / or a document processing application, and / or a presentation application.
[0352] Fig. 9900 is a flow chart illustrating a method for managing visual indicators of visual content in media according to some embodiments. Method 900 is performed at a computer system (e.g., 100, 300, 500) in communication with a display generation component and one or more input devices. Some operations in method 900 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.
[0353] As described below, method 900 provides an intuitive way to manage visual indicators of visual content in media. The method reduces the cognitive burden of managing visual indicators of visual content in media for users, thereby creating a more efficient human-computer interface. For battery-powered computing devices, enabling users to manage visual indicators of visual content in media faster and more efficiently saves power and increases the time interval between battery charges.
[0354] Method 900 is performed at a computer system (e.g., smartphone, desktop computer, laptop computer, tablet computer) in communication with display generation components (e.g., display controller, touch-sensitive display system) and one or more input devices (e.g., touch-sensitive surface).
[0355] The computer system displays (902) via a display generation component a first representation (e.g., 724a (e.g., 724b) of a previously captured media item (e.g., photo media, video media) (e.g., photo media or video media previously captured by receiving input directed to a selectable user interface object for capturing media) (e.g., photo media or video media available for later use, editing, and / or viewing by a user) (e.g., a representation of the previously captured media item at a first zoom level (e.g., a first portion of the previously captured media item)). Figure 7B 724a in (e.g., an image or video). In some embodiments, in response to receiving input for a thumbnail representation of previously captured media (and / or by receiving input pointing to a representation of different previously captured media (e.g., a swipe gesture)), a first representation of the previously captured media is displayed.
[0356] When displaying a first representation of a previously captured media item (e.g., 724a (e.g., Figure 7B 724a)), the computer system detects (904) via one or more input devices corresponding to displaying a second representation of the previously captured media item (e.g., 724a (e.g., Figure 7CIn some embodiments, the request to display a second representation of the previously captured media item is a request to zoom in / out (e.g., zoom in / out first transition). In some embodiments, the second representation is a zoomed in / out version of the first representation. In some embodiments, the request to display a second representation of the previously captured media item is a request to translate (e.g., translate (e.g., convert the first representation in a direction (left / right / up / down)). In some embodiments, the second representation includes or does not include additional content included in the first representation. In some embodiments, displaying the second representation of the previously captured media item includes displaying content of the previously captured media item not included in the first representation and displaying content of the previously captured media item included in the first representation.
[0357] In response to detecting a second representation corresponding to displaying a previously captured media item (e.g., 724a (e.g., Figure 7C In response to an input (e.g., 750b, 750d, 750e, 750f, 750g, 750k) of a request for a previously captured media item, the computer system displays (906) via a display generation component a second representation (e.g., 724a (e.g., Figure 7C 724a)) (e.g., a representation of the previously captured media item at a second zoom level different from the first zoom level (e.g., a first portion of the previously captured media item or a second portion of the previously captured media item). In some embodiments, the seco...
Claims
1. A computer system configured to communicate with a display generation component, comprising: one or more processors; and A memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: displaying, via the display generating component, a camera user interface including simultaneously displaying a media representation and a media capture affordance; When the media representation and the media capture affordance are displayed simultaneously: displaying, via the display generation component, a first user interface object corresponding to one or more text management operations based on determining that a corresponding set of criteria is satisfied, wherein the corresponding set of criteria includes criteria that are satisfied when corresponding text is detected in the media representation; as well as Based on determining that the corresponding set of criteria is not satisfied, abandoning displaying the first user interface object; while displaying the media representation, detecting a first input directed toward the camera user interface; In response to detecting the first input directed toward the camera user interface: initiating capture of media to be added to a media library associated with the computer system based on determining that the first input corresponds to a selection of the media capture affordance; as well as based on determining that the first input corresponds to a selection of the first user interface object, displaying, via the display generation component, a plurality of options for managing the corresponding text, wherein after detecting the first input and based on determining that the first input corresponds to a selection of the first user interface object, the media representation includes the corresponding text and an indication that first one or more portions of the corresponding text are selected, and wherein the first one or more portions of the corresponding text are displayed at a first location in the camera user interface; detecting a change in a physical environment within a field of view of one or more cameras in communication with the computer system while the first one or more portions of the corresponding text are displayed at the first location in the camera user interface; and In response to detecting the change in the physical environment within the field of view of the one or more cameras, continuing to display the first one or more portions of the corresponding text at the first location in the camera user interface. 2 . The computer system of claim 1 , wherein the first input is a tap gesture directed to the first user interface object.
3. The computer system of claim 1, wherein: The media representation includes the corresponding text; and The one or more programs also include instructions for: After detecting the first input, detecting a second input directed toward the camera user interface; and In response to detecting the second input directed toward the camera user interface: Based on determining that the second input corresponds to a selection of a second one or more portions of the corresponding text, an indication that the second one or more portions of the corresponding text are selected is displayed. The computer system of claim 3 , wherein the second input is a tap gesture or a swipe gesture.
5. The computer system of claim 1, wherein the one or more programs further comprise instructions for: In response to detecting the first input directed toward the camera user interface and based on the determination that the first input corresponds to a selection of the first user interface object, displaying an indication of a selection of text included in the media representation.
6. The computer system of claim 1, wherein: prior to detecting the first input, displaying the media representation in a first appearance; and The one or more programs also include instructions for: In response to detecting the first input directed toward the camera user interface and based on the determination that the first input corresponds to a selection of the first user interface object, displaying the media representation in a second appearance different from the first appearance.
7. The computer system of claim 1, wherein: The media representation includes the corresponding text; and The one or more programs also include instructions for: Based on the determining that the corresponding set of criteria is satisfied, a third one or more portions of the corresponding text are emphasized.
8. The computer system of claim 7, wherein: Emphasizing the third one or more portions of the corresponding text includes displaying an indication that the corresponding text has been detected; and The one or more programs also include instructions for: receiving a request to display a second representation of media while the third one or more portions of the corresponding text are emphasized; and In response to receiving the request to display the second representation of media, the indication that corresponding text has been detected is transitioned from a second location in the camera user interface to a third location in the camera user interface.
9. The computer system of claim 1, wherein: After detecting the first input and based on determining that the first input corresponds to a selection of the first user interface object, the media representation includes the corresponding text and an indication that a fourth one or more portions of the corresponding text are selected; and The one or more programs also include instructions for: receiving a request to display a third representation of the media; as well as In response to receiving the request to display the third representation of the media, an indication that at least a portion of the text included in the third representation of the media is selected is displayed, wherein the indication that at least the portion of the text included in the third representation of the media is selected is different from the indication that the fourth one or more portions of the corresponding text are selected.
10. The computer system of claim 1, wherein prior to detecting the first input directed toward the camera user interface: The computer system is in communication with one or more cameras; and The media representation is a representation of one or more objects in a physical environment in a field of view of the one or more cameras.
11. The computer system of claim 1, wherein: The media representation is a first representation of the media; and The one or more programs also include instructions for: while displaying the first user interface object, detecting a request to display a fifth representation of media; as well as In response to detecting the request to display the fifth representation of media and based on determining that the corresponding set of criteria is not satisfied, ceasing to display the first user interface object.
12. The computer system of claim 1, wherein the corresponding set of criteria includes criteria that are satisfied when it is determined that the corresponding text satisfies a predetermined prominence criterion.
13. The computer system of claim 1, wherein the one or more programs further comprise instructions for: When displaying the media representation and in accordance with determining that the corresponding text includes a portion of text determined to be of a corresponding text type, an indication that the corresponding text type has been detected is displayed.
14. The computer system of claim 1, wherein the one or more programs further comprise instructions for: When the plurality of options for managing the corresponding text are displayed, receiving a third input directed to the camera user interface that does not include a portion of the corresponding text; and In response to receiving the third input, ceasing to display the plurality of options for managing the corresponding text.
15. The computer system of claim 1, wherein the one or more programs further comprise instructions for: When the media representation and the media capture affordance are displayed simultaneously and based on determining that the media representation includes a first machine-readable code: displaying the first user interface object; and A representation of a uniform resource locator corresponding to the first machine readable code is displayed.
16. A computer system according to claim 1, wherein based on determining that the first input corresponds to a selection of the first user interface object and the media representation includes a second machine-readable code, the multiple options for managing the corresponding text include one or more options for managing information corresponding to the second machine-readable code.
17. A computer system according to claim 1, wherein the camera user interface includes a plurality of camera setting indicators that can be selected to change the settings of one or more cameras.
18. The computer system of claim 1, wherein the camera user interface includes an affordance that, when selected, causes representations of one or more previously captured media to be displayed.
19. 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, wherein the computer system is in communication with a display generation component, the one or more programs comprising instructions for: displaying, via the display generating component, a camera user interface including simultaneously displaying a media representation and a media capture affordance; When the media representation and the media capture affordance are displayed simultaneously: displaying, via the display generation component, a first user interface object corresponding to one or more text management operations based on determining that a corresponding set of criteria is satisfied, wherein the corresponding set of criteria includes criteria that are satisfied when corresponding text is detected in the media representation; as well as Based on determining that the corresponding set of criteria is not satisfied, abandoning displaying the first user interface object; while displaying the media representation, detecting a first input directed toward the camera user interface; In response to detecting the first input directed toward the camera user interface: initiating capture of media to be added to a media library associated with the computer system based on determining that the first input corresponds to a selection of the media capture affordance; as well as based on determining that the first input corresponds to a selection of the first user interface object, displaying, via the display generation component, a plurality of options for managing the corresponding text, wherein after detecting the first input and based on determining that the first input corresponds to a selection of the first user interface object, the media representation includes the corresponding text and an indication that first one or more portions of the corresponding text are selected, and wherein the first one or more portions of the corresponding text are displayed at a first location in the camera user interface; detecting a change in a physical environment within a field of view of one or more cameras in communication with the computer system while the first one or more portions of the corresponding text are displayed at the first location in the camera user interface; and In response to detecting the change in the physical environment within the field of view of the one or more cameras, continuing to display the first one or more portions of the corresponding text at the first location in the camera user interface.
20. The non-transitory computer-readable storage medium of claim 19, wherein the first input is a tap gesture directed to the first user interface object.
21. The non-transitory computer readable storage medium of claim 19, wherein: The media representation includes the corresponding text; and The one or more programs also include instructions for: After detecting the first input, detecting a second input directed toward the camera user interface; and In response to detecting the second input directed toward the camera user interface: Based on determining that the second input corresponds to a selection of a second one or more portions of the corresponding text, an indication that the second one or more portions of the corresponding text are selected is displayed.
22. The non-transitory computer-readable storage medium of claim 21, wherein the second input is a tap gesture or a swipe gesture.
23. The non-transitory computer readable storage medium of claim 19, the one or more programs further comprising instructions for: In response to detecting the first input directed toward the camera user interface and based on the determination that the first input corresponds to a selection of the first user interface object, displaying an indication of a selection of text included in the media representation.
24. The non-transitory computer readable storage medium of claim 19, wherein: prior to detecting the first input, displaying the media representation in a first appearance; and The one or more programs also include instructions for: In response to detecting the first input directed toward the camera user interface and based on the determination that the first input corresponds to a selection of the first user interface object, displaying the media representation in a second appearance different from the first appearance.
25. The non-transitory computer readable storage medium of claim 19, wherein: The media representation includes the corresponding text; and The one or more programs also include instructions for: Based on the determining that the corresponding set of criteria is satisfied, a third one or more portions of the corresponding text are emphasized.
26. The non-transitory computer readable storage medium of claim 25, wherein: Emphasizing the third one or more portions of the corresponding text includes displaying an indication that the corresponding text has been detected; and The one or more programs also include instructions for: receiving a request to display a second representation of media when the third one or more portions of the corresponding text are emphasized; as well as In response to receiving the request to display the second representation of media, the indication that corresponding text has been detected is transitioned from a second location in the camera user interface to a third location in the camera user interface.
27. The non-transitory computer readable storage medium of claim 19, wherein: After detecting the first input and based on determining that the first input corresponds to a selection of the first user interface object, the media representation includes the corresponding text and an indication that a fourth one or more portions of the corresponding text are selected; and The one or more programs also include instructions for: receiving a request to display a third representation of the media; as well as In response to receiving the request to display the third representation of the media, an indication that at least a portion of the text included in the third representation of the media is selected is displayed, wherein the indication that at least the portion of the text included in the third representation of the media is selected is different from the indication that the fourth one or more portions of the corresponding text are selected.
28. The non-transitory computer-readable storage medium of claim 19, wherein prior to detecting the first input directed toward the camera user interface: The computer system is in communication with one or more cameras; and The media representation is a representation of one or more objects in a physical environment in a field of view of the one or more cameras.
29. The non-transitory computer readable storage medium of claim 19, wherein: The media representation is a first representation of the media; and The one or more programs also include instructions for: while displaying the first user interface object, detecting a request to display a fifth representation of media; as well as In response to detecting the request to display the fifth representation of media and based on determining that the corresponding set of criteria is not satisfied, ceasing to display the first user interface object.
30. The non-transitory computer-readable storage medium of claim 19, wherein the corresponding set of criteria includes criteria that are satisfied when it is determined that the corresponding text satisfies a predetermined prominence criterion.
31. The non-transitory computer readable storage medium of claim 19, the one or more programs further comprising instructions for: When displaying the media representation and in accordance with determining that the corresponding text includes a portion of text determined to be of a corresponding text type, an indication that the corresponding text type has been detected is displayed.
32. The non-transitory computer readable storage medium of claim 19, the one or more programs further comprising instructions for: When the plurality of options for managing the corresponding text are displayed, receiving a third input directed to the camera user interface that does not include a portion of the corresponding text; and In response to receiving the third input, ceasing to display the plurality of options for managing the corresponding text.
33. The non-transitory computer readable storage medium of claim 19, the one or more programs further comprising instructions for: When the media representation and the media capture affordance are displayed simultaneously and based on determining that the media representation includes a first machine-readable code: displaying the first user interface object; and A representation of a uniform resource locator corresponding to the first machine readable code is displayed.
34. A non-transitory computer-readable storage medium according to claim 19, wherein based on determining that the first input corresponds to a selection of the first user interface object and the media representation includes a second machine-readable code, the multiple options for managing the corresponding text include one or more options for managing information corresponding to the second machine-readable code.
35. The non-transitory computer-readable storage medium of claim 19, wherein the camera user interface comprises a plurality of camera setting affordances selectable to change settings of one or more cameras.
36. The non-transitory computer-readable storage medium of claim 19, wherein the camera user interface includes an affordance that, when selected, causes representations of one or more previously captured media to be displayed.
37. A method for displaying a camera user interface, comprising: At a computer system in communication with a display generating component: displaying, via the display generating component, a camera user interface including simultaneously displaying a media representation and a media capture affordance; When the media representation and the media capture affordance are displayed simultaneously: displaying, via the display generation component, a first user interface object corresponding to one or more text management operations based on determining that a corresponding set of criteria is satisfied, wherein the corresponding set of criteria includes criteria that are satisfied when corresponding text is detected in the media representation; as well as Based on determining that the corresponding set of criteria is not satisfied, abandoning displaying the first user interface object; while displaying the media representation, detecting a first input directed toward the camera user interface; In response to detecting the first input directed toward the camera user interface: initiating capture of media to be added to a media library associated with the computer system based on determining that the first input corresponds to a selection of the media capture affordance; as well as based on determining that the first input corresponds to a selection of the first user interface object, displaying, via the display generation component, a plurality of options for managing the corresponding text, wherein after detecting the first input and based on determining that the first input corresponds to a selection of the first user interface object, the media representation includes the corresponding text and an indication that first one or more portions of the corresponding text are selected, and wherein the first one or more portions of the corresponding text are displayed at a first location in the camera user interface; detecting a change in a physical environment within a field of view of one or more cameras in communication with the computer system while the first one or more portions of the corresponding text are displayed at the first location in the camera user interface; and In response to detecting the change in the physical environment within the field of view of the one or more cameras, continuing to display the first one or more portions of the corresponding text at the first location in the camera user interface.
38. The method of claim 37, wherein the first input is a tap gesture directed to the first user interface object.
39. The method of claim 37, wherein: The media representation includes the corresponding text; and The method further comprises: After detecting the first input, detecting a second input directed toward the camera user interface; as well as In response to detecting the second input directed toward the camera user interface: Based on determining that the second input corresponds to a selection of a second one or more portions of the corresponding text, an indication that the second one or more portions of the corresponding text are selected is displayed.
40. The method of claim 39, wherein the second input is a tap gesture or a swipe gesture.
41. The method of claim 37, further comprising: In response to detecting the first input directed toward the camera user interface and based on the determination that the first input corresponds to a selection of the first user interface object, displaying an indication of a selection of text included in the media representation.
42. The method of claim 37, wherein: prior to detecting the first input, displaying the media representation in a first appearance; and The method further comprises: In response to detecting the first input directed toward the camera user interface and based on the determination that the first input corresponds to a selection of the first user interface object, displaying the media representation in a second appearance different from the first appearance.
43. The method of claim 37, wherein: The media representation includes the corresponding text; and The method further comprises: Based on the determining that the corresponding set of criteria is satisfied, a third one or more portions of the corresponding text are emphasized.
44. The method of claim 43, wherein: Emphasizing the third one or more portions of the corresponding text includes displaying an indication that the corresponding text has been detected; and The method further comprises: receiving a request to display a second representation of media while the third one or more portions of the corresponding text are emphasized; and In response to receiving the request to display the second representation of media, the indication that corresponding text has been detected is transitioned from a second location in the camera user interface to a third location in the camera user interface.
45. The method of claim 37, wherein: After detecting the first input and based on determining that the first input corresponds to a selection of the first user interface object, the media representation includes the corresponding text and an indication that a fourth one or more portions of the corresponding text are selected; and The method further comprises: receiving a request to display a third representation of the media; and In response to receiving the request to display the third representation of the media, an indication that at least a portion of the text included in the third representation of the media is selected is displayed, wherein the indication that at least the portion of the text included in the third representation of the media is selected is different from the indication that the fourth one or more portions of the corresponding text are selected.
46. The method of claim 37, wherein prior to detecting the first input directed toward the camera user interface: The computer system is in communication with one or more cameras; and The media representation is a representation of one or more objects in a physical environment in a field of view of the one or more cameras.
47. The method of claim 37, wherein: The media representation is a first representation of the media; and The method further comprises: While displaying the first user interface object, detecting a request to display a fifth representation of media; and In response to detecting the request to display the fifth representation of media and based on determining that the corresponding set of criteria is not satisfied, ceasing to display the first user interface object.
48. The method of claim 37, wherein the corresponding set of criteria includes criteria that are satisfied when it is determined that the corresponding text satisfies a predetermined prominence criterion.
49. The method of claim 37, further comprising: When displaying the media representation and in accordance with determining that the corresponding text includes a portion of text determined to be of a corresponding text type, an indication that the corresponding text type has been detected is displayed.
50. The method of claim 37, further comprising: receiving a third input directed to a portion of the camera user interface that does not include the corresponding text while the plurality of options for managing the corresponding text are displayed; as well as In response to receiving the third input, ceasing to display the plurality of options for managing the corresponding text.
51. The method of claim 37, further comprising: When the media representation and the media capture affordance are displayed simultaneously and based on determining that the media representation includes a first machine-readable code: displaying the first user interface object; and A representation of a uniform resource locator corresponding to the first machine readable code is displayed.
52. A method according to claim 37, wherein based on determining that the first input corresponds to a selection of the first user interface object and the media representation includes a second machine-readable code, the multiple options for managing the corresponding text include one or more options for managing information corresponding to the second machine-readable code.
53. A method according to claim 37, wherein the camera user interface includes a plurality of camera setting indicators that can be selected to change the settings of one or more cameras.
54. The method of claim 37, wherein the camera user interface includes an affordance that, when selected, causes representations of one or more previously captured media to be displayed.
Citation Information
Patent Citations
Method and apparatus for integrating manual input
US20020015024A1
Gestures for touch sensitive input devices
US20060026521A1
Gestures for touch sensitive input devices
US20060026536A1
Virtual input device placement on a touch screen user interface
US20060033724A1
Multipoint touchscreen
US20060097991A1