Device, method, and graphical user interface for automatically providing shared content to application
By automatically pushing shared content to corresponding applications in electronic devices, the problem of difficulty for users to discover and access shared content is solved, efficient content discovery and access is achieved, and energy consumption is reduced.
Patent Information
- Application Number
- JP2024220188
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2021-09-21
- Filing Date
- 2024-12-16
- Publication Date
- 2025-04-15
- Estimated Expiration
- 2042-05-10
AI Technical Summary
The prior art is difficult to efficiently discover and access shared content in electronic devices, and users need to make a lot of user input, resulting in waste of energy and poor user experience.
By implementing an automated method in electronic devices, the shared content is automatically pushed to the corresponding application, and users can access the shared content without additional input.
Improves the discovery and access efficiency of shared content, reduces the amount of user input and energy consumption, and extends battery life in battery-powered devices.
Smart Images

Figure 2025063037000001_ABST
Abstract
Description
[Technical field]
[0001] (Related Applications) This application is a continuation of U.S. patent application Ser. No. 17 / 481,206, filed Sep. 21, 2021, entitled "Device, Method, and Graphical User Interface for Automatically Providing Shared Content to Applications," which claims the benefit of U.S. Provisional Patent Application Ser. No. 63 / 189,654, filed May 17, 2021.
[0002] This application is a continuation of U.S. patent application Ser. No. 17 / 481,212, filed Sep. 21, 2021, entitled "Device, Method, and Graphical User Interface for Automatically Providing Shared Content to Applications," which claims the benefit of U.S. Provisional Patent Application Ser. No. 63 / 189,654, filed May 17, 2021.
[0003] (Technical field) TECHNICAL FIELD This disclosure relates generally to electronic devices that share content between applications. [Background technology]
[0004] In recent years, personal use of electronic devices has increased significantly. Examples of such electronic devices include smartphones, laptops, desktop computers, wearable technology, etc. Such devices are increasingly being used for communication (e.g., instant messaging, email, or social media) and entertainment (e.g., music, television, podcasts, etc.). For example, smartphone users frequently receive communications from various contacts that include content, recommend content, or otherwise identify content that the user may want to view or interact with later (e.g., a user may receive a song recommendation from a friend and want to listen to the song after work). Current methods do not provide an efficient way to display this received content so that the user can easily find it later. For example, a user typically needs to open and read a message to discover that it contains shared content, such as a book, video, photo, article, podcast, music, a link to a web page, etc. These methods typically require a large number of user inputs, create a significant cognitive burden on the user, and take longer than necessary, thereby wasting energy. This latter consideration is particularly important in battery-operated devices. Summary of the Invention
[0005] Thus, there is a need for electronic devices with faster, more efficient methods and interfaces for improving the discoverability of shared content without requiring additional user input. Such methods and interfaces reduce the number, range, and / or type of inputs from a user, creating a more efficient human-machine interface. For battery-operated devices, such methods and interfaces conserve power and extend the time between battery charges.
[0006] The above drawbacks and other problems associated with user interfaces of electronic devices are reduced or eliminated by the disclosed devices. In some embodiments, the device is a desktop computer. In some embodiments, the device is portable (e.g., a notebook computer, a tablet computer, or a handheld device). In some embodiments, the device is a personal electronic device (e.g., a wearable electronic device such as a watch). In some embodiments, the device has a touchpad. In some embodiments, the device has a touch-sensitive display (also known as a "touch screen" or "touch screen display"). In some embodiments, the device has a graphical user interface (GUI), one or more processors, memory, and one or more modules, programs, or sets of instructions stored in the memory for performing a number of functions. In some embodiments, a user interacts with the GUI primarily through contacts and gestures of a stylus and / or finger on a touch-sensitive surface. In some embodiments, the functionality optionally includes image editing, drawing, presenting, word processing, spreadsheet creation, game playing, making phone calls, video conferencing, emailing, instant messaging, training support, digital photography, digital videography, web browsing, digital music playback, note taking, and / or digital video playback, and executable instructions to perform those functionality are optionally contained on a non-transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors.
[0007] According to some embodiments, a method is performed on an electronic device in communication with a display generation component and one or more input devices. The method includes receiving, by a messaging application of the plurality of applications, information identifying a content item as shared content, and in response to receiving the information identifying the content item as shared content and in accordance with a determination that the content item is of a first type, automatically making the content item available in a first application of the plurality of applications, the first application associated with the first type of content. The method further includes in response to receiving the information identifying the content item as shared content and in accordance with a determination that the content item is of a second type, automatically making the content item available in a second application of the plurality of applications, the second application associated with the second type of content.
[0008] According to some embodiments, a method is performed on an electronic device in communication with a display generation component and one or more input devices. The method includes receiving, by a messaging application of the plurality of applications, information identifying a content item of a first type as shared content. The method further includes automatically making the content item available within the first application in response to receiving the information identifying the content item as shared content and in accordance with a determination that a first application of the plurality of applications can open the first type of content and in accordance with a determination that the first application is authorized to provide the information identifying the content item as shared content to the first application. The method further includes not automatically making the content item available within the first application in response to receiving the information identifying the content item as shared content and in accordance with a determination that a first application of the plurality of applications can open the first type of content and in accordance with a determination that the first application is not authorized to provide the information identifying the content item as shared content to the first application.
[0009] According to some embodiments, a method is performed on an electronic device in communication with a display generation component and one or more input devices, the method including displaying a view of a first application of the plurality of applications while displaying a representation of a content item and a selectable attribute affordance that provides a link to a location in a second application from which information identifying the content item as shared content was received.
[0010] According to some embodiments, a method is performed on an electronic device in communication with a display generation component and one or more input devices. The method includes displaying a representation of a content item in a first application of a plurality of applications. The method further includes receiving an input selecting the representation of the content item while displaying the representation of the content item in the first application, and activating a control to highlight the first type of content item in a second application of the plurality of applications in response to receiving the input selecting the representation of the content item in a second application of the plurality of applications, the second application being associated with the first type of content.
[0011] According to some embodiments, an electronic device includes a display, a touch-sensitive surface, optionally one or more sensors that detect intensity of contact with the touch-sensitive surface, optionally one or more tactile output generators, one or more processors, and a memory having stored thereon one or more programs, the one or more programs configured to be executed by the one or more processors, the one or more programs including instructions to perform or cause to be performed any of the operations of the methods described herein. According to some embodiments, a computer-readable storage medium has stored therein instructions that, when executed by an electronic device having a display, a touch-sensitive surface, optionally one or more sensors that detect intensity of contact with the touch-sensitive surface, and optionally one or more tactile output generators, cause the device to perform or cause to be performed any of the operations of the methods described herein. According to some embodiments, a graphical user interface on an electronic device having a display, a touch-sensitive surface, optionally one or more sensors that detect the intensity of contact with the touch-sensitive surface, optionally one or more tactile output generators, a memory, and one or more processors executing one or more programs stored in the memory includes one or more of the elements displayed in any of the methods described herein, and the elements are updated in response to input as described in any of the methods described herein. According to some embodiments, the electronic device includes a display, a touch-sensitive surface, optionally one or more sensors that detect the intensity of contact with the touch-sensitive surface, optionally one or more tactile output generators, and means for performing or causing to be performed any of the operations of the methods described herein. According to some embodiments, an information processing apparatus for use in an electronic device having a display, a touch-sensitive surface, optionally one or more sensors that detect the intensity of contact with the touch-sensitive surface, optionally one or more tactile output generators includes means for performing or causing to be performed any of the operations of the methods described herein.
[0012] In this manner, electronic devices having a display, a touch-sensitive surface, optionally one or more sensors that detect intensity of contact with the touch-sensitive surface, optionally one or more tactile output generators, optionally one or more device orientation sensors, and optionally an audio system provide improved methods and interfaces for automatically providing shared content to applicable applications, thereby increasing the effectiveness, efficiency, and user satisfaction of such devices. [Brief description of the drawings]
[0013] For a better understanding of the various described embodiments, reference should be made to the following Detailed Description in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout:
[0014] [Figure 1A] 1 is a block diagram illustrating a portable multifunction device having a touch-sensitive display in accordance with some embodiments.
[0015] [Figure 1B] FIG. 2 is a block diagram illustrating example components for event processing according to some embodiments.
[0016] [Diagram 2] 1 illustrates a portable multifunction device with a touch screen in accordance with some embodiments.
[0017] [Diagram 3] 1 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface in accordance with some embodiments.
[0018] [Figure 4A] 1 illustrates an exemplary user interface for a menu of applications on a portable multifunction device in accordance with some embodiments.
[0019] [Figure 4B] 1 illustrates an exemplary user interface for a multifunction device having a touch-sensitive surface separate from a display in accordance with some embodiments.
[0020] [Figure 5A1] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5A2] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5A3] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5A4] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5A5] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5A6] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5A7] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5A8]1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5B1] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5B2] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5B3] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5C1] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5C2] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5C3] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5C4] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5D1]1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5D2] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5D3] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5D4] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments. [Figure 5D5] 1 illustrates an exemplary user interface for sharing music media content received in a messaging application to a music media application according to some embodiments.
[0021] [Figure 5E1] 1 illustrates an example user interface for highlighting a representation of content in a messaging application according to some embodiments. [Figure 5E2] 1 illustrates an example user interface for highlighting a representation of content in a messaging application according to some embodiments. [Figure 5E3] 1 illustrates an example user interface for highlighting a representation of content in a messaging application according to some embodiments. [Figure 5E4] 1 illustrates an example user interface for highlighting a representation of content in a messaging application according to some embodiments. [Figure 5E5]1 illustrates an example user interface for highlighting a representation of content in a messaging application according to some embodiments. [Figure 5E6] 1 illustrates an example user interface for highlighting a representation of content in a messaging application according to some embodiments. [Figure 5E7] 1 illustrates an example user interface for highlighting a representation of content in a messaging application according to some embodiments. [Figure 5E8] 1 illustrates an example user interface for highlighting a representation of content in a messaging application according to some embodiments.
[0022] [Figure 5F1] 1 illustrates an example user interface for disambiguating according to some embodiments. [Figure 5F2] 1 illustrates an example user interface for disambiguating according to some embodiments.
[0023] [Figure 5G1A] 1 illustrates an example user interface for sharing received media content in a group message thread according to some embodiments. [Figure 5G1B] 1 illustrates an example user interface for sharing received media content in a group message thread according to some embodiments. [Figure 5G2] 1 illustrates an example user interface for sharing received media content in a group message thread according to some embodiments. [Figure 5G3] 1 illustrates an example user interface for sharing received media content in a group message thread according to some embodiments. [Figure 5G4]1 illustrates an example user interface for sharing received media content in a group message thread according to some embodiments.
[0024] [Figure 5H] 1 illustrates an exemplary search user interface displaying shared and highlighted content according to some embodiments.
[0025] [Figure 5I1] 1 illustrates examples of various media applications displaying content shared in a messaging application according to some embodiments. [Figure 5I2] 1 illustrates examples of various media applications displaying content shared in a messaging application according to some embodiments. [Figure 5I3] 1 illustrates examples of various media applications displaying content shared in a messaging application according to some embodiments. [Figure 5I4] 1 illustrates examples of various media applications displaying content shared in a messaging application according to some embodiments. [Figure 5I5] 1 illustrates examples of various media applications displaying content shared in a messaging application according to some embodiments. [Figure 5I6] 1 illustrates examples of various media applications displaying content shared in a messaging application according to some embodiments. [Figure 5I7] 1 illustrates examples of various media applications displaying content shared in a messaging application according to some embodiments. [Figure 5I8] 1 illustrates examples of various media applications displaying content shared in a messaging application according to some embodiments. [Figure 5I9] 1 illustrates examples of various media applications displaying content shared in a messaging application according to some embodiments. [Figure 5I10] 1 illustrates examples of various media applications displaying content shared in a messaging application according to some embodiments.
[0026] [Figure 6A] 1 illustrates an exemplary user interface for initializing a sharing feature according to some embodiments. [Figure 6B] 1 illustrates an exemplary user interface for initializing a sharing feature according to some embodiments. [Figure 6C] 1 illustrates an exemplary user interface for initializing a sharing feature according to some embodiments. [Figure 6D] 1 illustrates an exemplary user interface for initializing a sharing feature according to some embodiments.
[0027] [Figure 7A] 1 illustrates an example user interface for enabling and / or disabling shared media integration features for multiple applications according to some embodiments. [Figure 7B] 1 illustrates an example user interface for enabling and / or disabling shared media integration features for multiple applications according to some embodiments. [Figure 7C] 1 illustrates an example user interface for enabling and / or disabling shared media integration features for multiple applications according to some embodiments. [Figure 7D] 1 illustrates an example user interface for enabling and / or disabling shared media integration features for multiple applications according to some embodiments.
[0028] [Figure 8A]FIG. 1 is a flow diagram of a process for automatically making content shared in one or more messaging applications available in a corresponding media application based on the type of content, according to some embodiments. [Figure 8B] FIG. 1 is a flow diagram of a process for automatically making content shared in one or more messaging applications available in a corresponding media application based on the type of content, according to some embodiments. [Figure 8C] FIG. 1 is a flow diagram of a process for automatically making content shared in one or more messaging applications available in a corresponding media application based on the type of content, according to some embodiments. [Figure 8D] FIG. 1 is a flow diagram of a process for automatically making content shared in one or more messaging applications available in a corresponding media application based on the type of content, according to some embodiments.
[0029] [Figure 9A] FIG. 1 is a flow diagram of a process for automatically displaying shared content in a media application based on whether a sharing feature is enabled, according to some embodiments. [Figure 9B] FIG. 1 is a flow diagram of a process for automatically displaying shared content in a media application based on whether a sharing feature is enabled, according to some embodiments. [Figure 9C] FIG. 1 is a flow diagram of a process for automatically displaying shared content in a media application based on whether a sharing feature is enabled, according to some embodiments. [Figure 9D] FIG. 1 is a flow diagram of a process for automatically displaying shared content in a media application based on whether a sharing feature is enabled, according to some embodiments. [Figure 9E] FIG. 1 is a flow diagram of a process for automatically displaying shared content in a media application based on whether a sharing feature is enabled, according to some embodiments. [Figure 9F] FIG. 1 is a flow diagram of a process for automatically displaying shared content in a media application based on whether a sharing feature is enabled, according to some embodiments.
[0030] [Figure 10A] FIG. 1 is a flow diagram of a process for displaying information about how a content item has been shared according to some embodiments. [Figure 10B] FIG. 1 is a flow diagram of a process for displaying information about how a content item has been shared according to some embodiments. [Figure 10C] FIG. 1 is a flow diagram of a process for displaying information about how a content item has been shared according to some embodiments. [Figure 10D] FIG. 1 is a flow diagram of a process for displaying information about how a content item has been shared according to some embodiments. [Figure 10E] FIG. 1 is a flow diagram of a process for displaying information about how a content item has been shared according to some embodiments.
[0031] [Figure 11A] 1 is a flow diagram of a process for highlighting a representation of a content item such that the highlighted representation of the content item is available in another application according to some embodiments. [Figure 11B] 1 is a flow diagram of a process for highlighting a representation of a content item such that the highlighted representation of the content item is available in another application according to some embodiments. [Figure 11C]1 is a flow diagram of a process for highlighting a representation of a content item such that the highlighted representation of the content item is available in another application according to some embodiments. [Figure 11D] 1 is a flow diagram of a process for highlighting a representation of a content item such that the highlighted representation of the content item is available in another application according to some embodiments. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0032] Many electronic devices have one or more communication applications and several other applications that provide different functions, including, but not limited to, entertainment, shopping, business, productivity, navigation, web browsing, and other types of functions. A user may frequently receive communications in one or more communication applications that include several different recommendations for various types of content. For example, different contacts of a user may send / share copies or links to music, books, photos, locations, podcasts, websites, news or articles, applications, etc. Current methods for viewing, listening, playing, or otherwise consuming shared content require a series of user inputs to navigate through various user interfaces (e.g., a user may need to scroll through several screens of received messages). For example, a user may be required to open a communication application, individually search and open each conversation thread, review and search each message or communication contained therein, and individually select each link or copy of the content in order to interact with the content shared by the user's contacts. Furthermore, in these methods, after a user selects a content and the electronic device displays the content, the user may need to make another series of inputs to respond to the contact and / or message that includes the selected content. For example, a user may be required to reopen a communication application, search conversations and / or messages to find the location where the content was shared, and then respond with that location. This tedious process is repeated for each content item that is shared. Furthermore, if the same content is shared by two or more contacts, the user may be required to go through the same inefficient method of searching communication applications, conversation threads, and messages to discover that a particular item of content was shared by multiple people. Furthermore, a user may have no way of knowing if two or more contacts have shared the same content until a search is initiated and / or completed.Thus, discovering and consuming shared content with current methods can be cumbersome and inefficient.
[0033] In the embodiments described below, an improved method for discovering shared content (or integrating shared content into a device ecosystem) is achieved by making different types of content shared in a messaging application automatically (e.g., without requiring additional user input) available in other applications where that type of content is typically provided, rendered, viewed, played, or listened to. Furthermore, in the embodiments described below, an improved method for discovering and connecting to the source of a share (e.g., the content sender) is achieved by displaying a selectable attribute affordance in a first application (e.g., a music, photo, or video application) that provides a link to a location in the communication application (e.g., a messaging application) where the content was shared. The selectable attribute affordance provides a mechanism in the first application to navigate to a location in the first application where information identifying the shared content item was originally received. Furthermore, the selectable attribute affordance indicates who the contacts who shared the content are, or, if more than one, how many contacts shared the same content. Additionally, improved methods for highlighting or pinning shared content of interest are achieved by providing user interface controls within a communication application for highlighting the shared content in another application. These improved methods provide an efficient way to display the shared content within the corresponding application in which the shared content is typically consumed, thus reducing the number of required user inputs and the corresponding cognitive burden that may result from having to navigate through different applications and menu hierarchies.
[0034] In the following, Figures 1A, 1B, 2, and 3 provide an exemplary device description. Figures 4A-4B, 5A1-5D5, 5E1-5E8, 5F1-5F2, 5G1-5G4, 5H, 5I1-5I10, 6A-6D, and 7A-7D show exemplary user interfaces for automatically providing shared content to appropriate or applicable applications. Figures 8A-8D show a flow diagram of a method for automatically making content shared in one or more messaging applications available in a corresponding media application based on the type of content, according to some embodiments. Figures 9A-9F show a flow diagram of a method for automatically displaying shared content in a media application based on whether a sharing feature is enabled. Figures 10A-10E show a flow diagram of a method for displaying information about how a content item was shared. Figures 11A-11D show a flow diagram of a method for highlighting a representation of a content item such that the highlighted representation of the content item is available in another application. The user interfaces of Figures 5A1-5D5, 5E1-5E8, 5F1-5F2, 5G1-5G4, 5H, 5I1-5I10, 6A-6D, and 7A-7D are used to illustrate the process of Figures 8A-8D, 9A-9F, 10A-10E, and 11A-11D. Exemplary Devices
[0035] Reference will now be made in detail to the embodiments, examples of which are illustrated in the accompanying drawings. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the various embodiments being described. However, it will be apparent to those skilled in the art that the various embodiments described may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits, and networks have not been described in detail so as not to unnecessarily obscure aspects of the embodiments.
[0036] In this specification, terms such as first, second, etc. are used in some examples to describe various elements, but it will be understood that these elements should not be limited by these terms. These terms are used only to distinguish one element from another. For example, a first contact can be referred to as a second contact, and similarly, a second contact can be referred to as a first contact, without departing from the scope of the various embodiments described. Although a first contact and a second contact are both contacts, they are not the same contact unless the context clearly indicates otherwise.
[0037] The terminology used in the description of the various embodiments described herein is for the purpose of describing particular embodiments only and is not intended to be limiting. In the description of the various embodiments described and in the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It should also be understood that as used herein, the term "and / or" refers to and includes any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms "includes," "including," "comprises," and / or "comprising," as used herein, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0038] As used herein, the term "if" is optionally interpreted to mean "when," "upon," "in response to determining," or "in response to detecting," depending on the context. Similarly, the phrases "if it is determined" or "if [a stated condition or event] is detected" are optionally interpreted to mean "upon determining" or "in response to determining," or "upon detecting [the stated condition or event]" or "in response to detecting [the stated condition or event]," depending on the context.
[0039] Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions, such as PDA and / or music player functions. Exemplary embodiments of portable multifunction devices include, but are not limited to, the iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California. Other portable electronic devices, such as laptops or tablet computers having a touch-sensitive surface (e.g., a touchscreen display and / or a touchpad), are optionally used. It should also be understood that in some embodiments, the device is not a portable communication device, but rather a desktop computer having a touch-sensitive surface (e.g., a touchscreen display and / or a touchpad).
[0040] In the following discussion, electronic devices are described that include a display and a touch-sensitive surface, however, it should be understood that the electronic device optionally includes one or more other physical user-interface devices, such as a physical keyboard, a mouse, and / or a joystick.
[0041] The device typically supports a variety of applications, such as one or more of note-taking applications, drawing applications, presentation applications, word processing applications, website creation applications, disc authoring applications, spreadsheet applications, gaming applications, telephony applications, video conferencing applications, email applications, instant messaging applications, training support applications, photo management applications, digital camera applications, digital video camera applications, web browsing applications, digital music player applications, and / or digital video player applications.
[0042] The various applications running on the device optionally use at least one common physical user-interface device, such as a touch-sensitive surface. One or more features of the touch-sensitive surface and corresponding information displayed on the device are optionally adjusted and / or changed for each application and / or within individual applications. In this way, the common physical architecture of the device (such as the touch-sensitive surface) optionally supports a variety of applications with user interfaces that are intuitive and transparent to the user.
[0043] Attention is now directed to embodiments of portable devices with touch-sensitive displays. FIG. 1A is a block diagram illustrating a portable multifunction device 100 having a touch-sensitive display system 112, according to some embodiments. Touch-sensitive display system 112 may be conveniently referred to as a "touch screen" or simply a touch-sensitive display. Device 100 includes memory 102 (optionally including one or more computer-readable storage media), memory controller 122, one or more processing units (CPUs) 120, peripherals interface 118, RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, input / output (I / O) subsystem 106, other input or control devices 116, and external port 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more intensity sensors 165 that detect the intensity of a contact on device 100 (e.g., a touch-sensitive surface, such as touch-sensitive display system 112 of device 100). Device 100 optionally includes one or more tactile output generators 167 that generate tactile output on device 100 (e.g., generate tactile output on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touchpad 355 of device 300). These components optionally communicate over one or more communication buses or signal lines 103.
[0044] As used herein and in the 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, that will be detected by a user with the user's sense of touch. For example, in a situation where a device or a component of a device is in contact with a touch-sensitive surface of a user (e.g., the fingers, palm, or other part of a user's hand), the tactile output generated by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in a physical property of the device or a component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is optionally interpreted by the user as a "down-click" or "up-click" of a physical actuator button. In some cases, a user feels a tactile sensation such as a "down-click" or "up-click" even when there is no movement of a physical actuator button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user's action. As another example, movement of the touch-sensitive surface is optionally interpreted or sensed by a user as "roughness" of the touch-sensitive surface, even when there is no change in the smoothness of the touch-sensitive surface. Such user interpretation of touch depends on the user's personal sensory perception, but there are many sensory perceptions of touch that are common to a majority of users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., an "up click," a "down click," "roughness"), unless otherwise noted, the generated tactile output corresponds to a physical displacement of the device, or a component of the device, that produces the described sensory perception for a typical (or average) user.Using tactile output to provide haptic feedback to the user can improve usability of the device and make the user-device interface more efficient (e.g., by helping the user provide appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing power usage and improving the device's battery life by enabling the user to use the device more quickly and efficiently.
[0045] In some embodiments, the tactile output pattern specifies characteristics of the tactile output, such as the amplitude of the tactile output, the shape of the movement waveform of the tactile output, the frequency of the tactile output, and / or the duration of the tactile output.
[0046] When tactile outputs having different tactile output patterns are generated by the device (e.g., via one or more tactile output generators that move a movable mass to generate the tactile output), the tactile outputs can cause different tactile sensations when a user holds or touches the device. Although the user's sensations are based on the user's perception of the tactile output, most users are able to discern changes in waveform, frequency, and amplitude of the tactile output generated by the device. Thus, the waveform, frequency, and amplitude can be adjusted to indicate to the user that different actions have been performed. Thus, in some situations, tactile output having a tactile output pattern designed, selected, and / or developed to simulate the properties (e.g., size, material, weight, stiffness, smoothness, etc.), behaviors (e.g., vibration, displacement, acceleration, rotation, expansion, etc.), and / or interactions (e.g., collision, adhesion, repulsion, attraction, friction, etc.) of objects in a given environment (e.g., a user interface including graphical features and objects, a simulated physical environment having virtual boundaries and virtual objects, an actual physical environment having physical boundaries and physical objects, and / or any combination of the above) provides a user with useful feedback that reduces input errors and increases the efficiency of a user's operation of the device. Additionally, the tactile output is optionally generated to correspond to feedback unrelated to simulated physical properties, such as input thresholds or object selection. In some situations, such tactile output provides a user with useful feedback that reduces input errors and increases the efficiency of a user's operation of the device.
[0047] In some embodiments, a tactile output with a suitable tactile output pattern serves as a cue to the appearance of an event of interest behind the scene in a user interface or device. Examples of events of interest include activation of an affordance (e.g., a real button, a virtual button, or a toggle switch) provided on the device or in the user interface, success or failure of a requested action, reaching or crossing a boundary in the user interface, entering a new state, switching input focus between objects, activating a new mode, reaching or crossing an input threshold, detection or recognition of a type of input or gesture, etc. In some embodiments, a tactile output is provided to act as a warning or alert to an impending event or outcome that will occur unless a redirection or interrupt input is detected in a timely manner. Tactile output is also used in other contexts to improve the user experience, improve the accessibility of the device to users with visual or motor impairments or other accessibility needs, and / or improve the efficiency and functionality of the user interface and / or device. The tactile output, optionally accompanied by audio output and / or visible user interface changes, further enhances the user's experience when interacting with the user interface and / or device, facilitates better communication of information about the state of the user interface and / or device, reduces input errors, and increases the efficiency of the user's operation of the device.
[0048] It is understood that device 100 is only one example of a portable multifunction device, and that device 100 optionally has more or fewer components than those shown, optionally combines two or more components, or optionally has a different configuration or arrangement of its components. The various components shown in FIG. 1A are implemented in hardware, software, firmware, or a combination thereof, including one or more signal processing circuits and / or application specific integrated circuits.
[0049] Memory 102 optionally includes high-speed random access memory, and optionally includes non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Access to memory 102 by other components of device 100, such as CPU(s) 120 and peripherals interface 118, is optionally controlled by memory controller 122.
[0050] A peripheral interface 118 may be used to couple input and output peripherals of the device with the CPU(s) 120 and memory 102. The one or more processors 120 operate or execute various software programs and / or instruction sets stored in the memory 102 to perform various functions and process data for the device 100.
[0051] In some embodiments, peripherals interface 118, CPU(s) 120, and memory controller 122 are optionally implemented on a single chip, such as chip 104. In some other embodiments, they are optionally implemented on separate chips.
[0052] The radio frequency (RF) circuitry 108 transmits and receives RF signals, also referred to as electromagnetic signals. The RF circuitry 108 converts electrical signals to electromagnetic signals or electromagnetic signals to electrical signals and communicates with communication networks and other communication devices via electromagnetic signals. The RF circuitry 108 optionally includes well-known circuits for performing these functions, including, but not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, etc. The RF circuitry 108 optionally communicates by wireless communication with networks, such as the Internet, also referred to as the World Wide Web (WWW), an intranet, and / or wireless networks, such as cellular telephone networks, wireless local area networks (LANs) and / or metropolitan area networks (MANs), and with other devices. The wireless communications options include Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPA), long term evolution (LTE), near field communication (NFC), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), and code division multiple access (CDMA).access (CDMA), time division multiple access (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11ac, IEEE 802.11ax, IEEE 802.11b, IEEE 802.11g, and / or IEEE 802.11n), voice over Internet Protocol (VoIP), Wi-MAX, protocols for email (e.g., Internet message access protocol (IMAP) and / or post office protocol (POP)), instant messaging (e.g., extensible messaging and presence protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE)), instant messaging and presence services (e.g., IEEE 802.11b), instant messaging and presence services (e.g., IEEE 802.11c), instant messaging and presence services (e.g., IEEE 802.11g), instant messaging and presence services (e.g., IEEE 802.11n ... The present invention may use any of a number of communications standards, protocols, and technologies, including, but not limited to, Intermediate System (IS) Intermediate Message Service (IMPS), and / or Short Message Service (SMS), or any other suitable communications protocol, including communications protocols not yet developed as of the filing date of this document.
[0053] 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 peripherals interface 118, converts the audio data into an electrical signal, and transmits the electrical signal to the speaker 111. The speaker 111 converts the electrical signal 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 signal into audio data, and transmits the audio data to the peripherals 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 peripherals interface 118. In some embodiments, the audio circuit 110 also includes a headset jack (e.g., 212, FIG. 2). The headset jack provides an interface between audio circuitry 110 and a detachable audio input / output peripheral such as an output-only headphone or a headset with both an output (e.g., one-ear or binaural headphones) and an input (e.g., a microphone).
[0054] I / O subsystem 106 couples input / output peripherals on device 100, such as touch-sensitive display system 112 and other input or control devices 116, with peripheral interface 118. I / O subsystem 106 optionally includes one or more input controllers 160 for display controller 156, light sensor controller 158, intensity sensor controller 159, haptic feedback controller 161, and other input or control devices. One or more input controllers 160 receive electrical signals from and send electrical signals to other input or control devices 116. Other input or control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, etc. In some alternative embodiments, input controller(s) 160 are optionally coupled to any (or none) of a keyboard, an infrared port, a USB port, a stylus, and / or a pointer device such as a mouse. The one or more buttons (e.g., 208, FIG. 2) optionally include up / down buttons for volume control of the speaker 111 and / or microphone 113. The one or more buttons optionally include a push button (e.g., 206, FIG. 2).
[0055] Touch-sensitive display system 112 provides an input and output interface between the device and a user. Display controller 156 receives electrical signals from and / or transmits electrical signals to touch-sensitive display system 112. Touch-sensitive display system 112 displays visual output to the user. This visual output optionally includes graphics, text, icons, animation, and any combination thereof (collectively "graphics"). In some embodiments, some or all of the visual output corresponds to a user interface object. As used herein, the term "affordance" refers to a user-interactive graphical user interface object (e.g., a graphical user interface object that is configured to respond to input directed towards the graphical user interface object). Examples of user-interactive graphical user interface objects include, but are not limited to, a button, a slider, an icon, a selectable menu item, a switch, a hyperlink, or other user interface control.
[0056] Touch-sensitive display system 112 has a touch-sensitive surface, sensor, or set of sensors that accepts input from a user based on haptic and / or tactile contact. Touch-sensitive display system 112 and display controller 156 (along with any associated modules and / or instruction sets in memory 102) detect contacts (and any movement or breaking of contact) on touch-sensitive display system 112 and translate the detected contacts into interactions with user interface objects (e.g., one or more soft keys, icons, web pages, or images) displayed on touch-sensitive display system 112. In some embodiments, the point of contact between touch-sensitive display system 112 and the user corresponds to the user's finger or stylus.
[0057] Touch-sensitive display system 112 optionally uses liquid crystal display (LCD), light emitting polymer display (LPD), or light emitting diode (LED) technology, although other display technologies are used in other embodiments. Touch-sensitive display system 112 and display controller 156 optionally detect contact and any movement or disruption thereof using any of a number of now known or later developed touch sensing technologies, including, but not limited to, capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with touch-sensitive display system 112. In some embodiments, projected mutual capacitance sensing technology is used, such as that found in the iPhone®, iPod Touch®, and iPad® from Apple Inc. of Cupertino, California.
[0058] Touch-sensitive display system 112 optionally has a video resolution greater than 100 dpi. In some embodiments, the touchscreen video resolution is greater than 400 dpi (e.g., 500 dpi, 800 dpi, or higher). A user optionally contacts touch-sensitive display system 112 using any suitable object or appendage, such as a stylus, finger, or the like. In some embodiments, the user interface is designed to work with finger-based contacts and gestures, which may be less precise than stylus-based inputs due to the larger contact area of a finger on a touchscreen than that of a stylus. In some embodiments, the device translates the rough finger input into precise pointer / cursor positions or commands to perform the action desired by the user.
[0059] In some embodiments, in addition to the touchscreen, device 100 optionally includes a touchpad (not shown) for activating or deactivating certain functions. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike the touchscreen, does not display visual output. The touchpad is optionally a touch-sensitive surface separate from touch-sensitive display system 112 or an extension of the touch-sensitive surface formed by the touchscreen.
[0060] Device 100 also includes a power system 162 that provides power to the various components. Power system 162 optionally includes a power management system, one or more power sources (e.g., batteries, alternating current (AC)), a recharging system, power outage detection circuitry, power converters or inverters, power status indicators (e.g., light emitting diodes (LEDs)), and any other components associated with the generation, management, and distribution of power within a portable device.
[0061] Device 100 also optionally includes one or more optical sensors 164. FIG. 1A shows a light sensor coupled to light sensor controller 158 in I / O subsystem 106. Light sensor(s) 164 optionally include a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. Light sensor(s) 164 receive light from the environment, projected through one or more lenses, and convert the light into data representing an image. In conjunction with imaging module 143 (also referred to as a camera module), light sensor(s) 164 optionally captures still images and / or video. In some embodiments, the light sensor is located on the back of device 100, opposite touch-sensitive display system 112 on the front of the device, so that the touch screen can be used as a viewfinder for still and / or video image acquisition. In some embodiments, another light sensor is placed on the front of the device so that an image of the user is captured (e.g., for a selfie, for a video conference while the user views other video conference participants on the touch screen, etc.).
[0062] Device 100 also optionally includes one or more contact intensity sensors 165. FIG. 1A shows a contact intensity sensor coupled to intensity sensor controller 159 in I / O subsystem 106. Contact intensity sensor(s) 165 optionally include one or more piezoresistive strain gauges, capacitive force sensors, electrical force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of a contact on a touch-sensitive surface). Contact intensity sensor(s) 165 receive contact intensity information (e.g., pressure information or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is juxtaposed with or proximate to a touch-sensitive surface (e.g., touch-sensitive display system 112). In some embodiments, at least one contact intensity sensor is located on the back of device 100, opposite touchscreen display system 112, which is located on the front of device 100.
[0063] Device 100 also optionally includes one or more proximity sensors 166. Figure 1A shows proximity sensor 166 coupled to peripherals interface 118. Alternatively, proximity sensor 166 is coupled to input controller 160 in I / O subsystem 106. In some embodiments, the proximity sensor turns off and disables touch-sensitive display system 112 when the multifunction device is placed near a user's ear (e.g., when the user is conducting a phone call).
[0064] Device 100 also optionally includes one or more tactile output generators 167. FIG. 1A shows a tactile output generator coupled to haptic feedback controller 161 in I / O subsystem 106. In some embodiments, tactile output generator(s) 167 include one or more electroacoustic devices, such as speakers or other audio components, and / or electromechanical devices that convert energy into linear motion, such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other tactile output generating components (e.g., components that convert electrical signals into tactile output on the device). Tactile output generator(s) 167 receive tactile feedback generation instructions from haptic feedback module 133 and generate a tactile output on device 100 that can be sensed by a user of device 100. In some embodiments, at least one tactile output generator is juxtaposed with or proximate to a touch-sensitive surface (e.g., touch-sensitive display system 112) and generates a tactile output, optionally by moving the touch-sensitive surface vertically (e.g., in / out of the surface of device 100) or horizontally (e.g., back and forth in the same plane as the surface of device 100). In some embodiments, the at least one tactile output generator sensor is located on the back of device 100, opposite touch-sensitive display system 112, which is located on the front of device 100.
[0065] Device 100 also optionally includes one or more accelerometers 168. FIG. 1A shows accelerometer 168 coupled to peripherals interface 118. Alternatively, accelerometer 168 is optionally coupled to input controller 160 in I / O subsystem 106. In some embodiments, information is displayed on a touchscreen display in portrait or landscape view based on analysis of data received from the one or more accelerometers. In addition to accelerometer(s), device 100 optionally includes a magnetometer (not shown) and a GPS (or GLONASS or other global navigation system) receiver (not shown) for obtaining information regarding the location and orientation (e.g., portrait or landscape) of device 100.
[0066] In some embodiments, the software components stored in memory 102 include an operating system 126, a communications module (or instruction set) 128, a contact / motion module (or instruction set) 130, a graphics module (or instruction set) 132, a haptic feedback module (or instruction set) 133, a text input module (or instruction set) 134, a Global Positioning System (GPS) module (or instruction set) 135, and applications (or instruction set) 136. Additionally, in some embodiments, as shown in Figures 1A and 3, memory 102 stores device / global internal state 157. Device / global internal state 157 includes one or more of: active application state, which indicates which applications, if any, are currently active; display state, which indicates what applications, views, or other information are occupying various areas of touch-sensitive display system 112; sensor state, which includes information obtained from the device's various sensors and other input or control devices 116; and location and / or position information relating to the device's location and / or orientation.
[0067] Operating system 126 (e.g., an embedded operating system such as iOS, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or VxWorks) includes various software components and / or drivers for controlling and managing overall system tasks (e.g., memory management, storage device control, power management, etc.) and facilitating communication between various hardware and software components.
[0068] The communications module 128 also includes various software components for facilitating communication with other devices via one or more external ports 124 and for processing data received by the RF circuitry 108 and / or the external ports 124. The external ports 124 (e.g., Universal Serial Bus (USB), FIREWIRE, etc.) are adapted to couple directly to other devices or indirectly via a network (e.g., Internet, wireless LAN, etc.). In some embodiments, the external ports are multi-pin (e.g., 30-pin) connectors identical to, similar to, and / or compatible with the 30-pin connectors used in some iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California. In some embodiments, the external ports are Lightning connectors identical to, similar to, and / or compatible with the Lightning connectors used in some iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California.
[0069] Contact / motion module 130 optionally detects contact with touch-sensitive display system 112 (in cooperation with display controller 156), and with other touch-sensitive devices (e.g., a touchpad or physical click wheel). Contact / motion module 130 includes software components for performing various operations related to detecting contact (e.g., by a finger or stylus), such as determining if contact has occurred (e.g., detecting a finger down event), determining the strength of the contact (e.g., the force or pressure of the contact, or a proxy for the force or pressure of the contact), determining if there is movement of the contact and tracking the movement across the touch-sensitive surface (e.g., detecting one or more finger drag events), and determining if the contact has stopped (e.g., detecting a finger up event or an interruption of the contact). Contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact, as represented by the set of contact data, optionally includes determining the speed (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact. These actions are optionally applied to a single contact (e.g., one finger contact or stylus contact) or multiple simultaneous contacts (e.g., "multi-touch" / multiple finger contacts). In some embodiments, contact / motion module 130 and display controller 156 detect contacts on a touchpad.
[0070] Contact / motion module 130 optionally detects gesture input by a user. Different gestures on a touch-sensitive surface have different contact patterns (e.g., different movements, timing, and / or strength of detected contacts). Thus, gestures are optionally detected by detecting a particular contact pattern. For example, detecting a finger tap gesture includes detecting a finger down event, followed by a finger up (lift off) event at the same position (or substantially the same position) as the finger down event (e.g., at the position of an icon). As another example, detecting a finger swipe gesture on a touch-sensitive surface includes detecting a finger down event, followed by one or more finger drag events, followed by a finger up (lift off) event. Similarly, taps, swipes, drags, and other gestures are optionally detected by detecting a particular contact pattern with respect to the stylus with respect to the stylus.
[0071] In some embodiments, detecting a finger tap gesture depends on the length of time between detecting a finger down event and detecting a finger up event, but is not related to the strength of the finger contact between detecting a finger down event and detecting a finger up event. In some embodiments, a tap gesture is detected according to determining that the length of time between a finger down event and a finger up event is less than a predefined value (e.g., less than 0.1, 0.2, 0.3, 0.4, or 0.5 seconds), regardless of whether the strength of the finger contact during the tap meets a given intensity threshold (greater than a nominal contact detection intensity threshold), such as a light or deep pressure intensity threshold. Thus, a finger tap gesture may satisfy certain input criteria that do not require that the characteristic intensity of the contact meet a given intensity threshold in order for the particular input criterion to be met. For clarity, a finger contact in a tap gesture generally needs to meet a nominal contact detection intensity threshold below which the contact is not detected in order to detect a finger down event. A similar analysis applies to detecting a tap gesture or other contact with a stylus. In cases where the device is capable of detecting contact of a finger or stylus hovering over the touch-sensitive surface, the nominal contact-detection intensity threshold optionally does not correspond to physical contact between the finger or stylus and the touch-sensitive surface.
[0072] In a similar manner, the same concepts apply to other types of gestures. For example, swipe gestures, pinch gestures, de-pinch gestures, and / or long press gestures are optionally detected based on meeting criteria that are either unrelated to the intensity of the contacts included in the gesture or do not require the contact(s) performing the gesture to reach an intensity threshold in order to be recognized. For example, swipe gestures are detected based on the amount of movement of one or more contacts. Pinch gestures are detected based on the movement of two or more contacts towards each other. De-pinch gestures are detected based on the movement of two or more contacts away from each other. Long press gestures are detected based on the duration of contact on the touch-sensitive surface with movement less than a threshold amount. Thus, a statement that a particular gesture recognition criterion does not require that the intensity of a contact(s) meet a respective intensity threshold in order for the particular gesture recognition criterion to be satisfied means that the particular gesture recognition criterion can be satisfied when the contact(s) in the gesture do not reach the respective intensity threshold, and can also be satisfied in situations where one or more of the contacts in the gesture reach or exceed the respective intensity threshold. In some embodiments, a tap gesture is detected based on a determination that a finger down event and a finger up event are detected within a predetermined time period, regardless of whether the contacts are above or below the respective intensity thresholds during the predetermined time period, and a swipe gesture is detected based on a determination that a movement of the contact is greater than a predetermined magnitude, even if the contacts exceed the respective intensity thresholds at the end of the movement of the contact. Even in implementations in which detection of gestures is affected by the strength of the contact performing the gesture (e.g., the device detects a long press more quickly when the intensity of the contact exceeds an intensity threshold, or the device is slow to detect a tap input when the intensity of the contact is higher), detection of those gestures does not require that the contact reach a particular intensity threshold, so long as the criteria for recognizing the gesture can be met in situations in which the contact does not reach a particular intensity threshold (e.g., even if the amount of time it takes to recognize the gesture varies).
[0073] The contact intensity threshold, duration threshold, and movement threshold are combined in various different combinations in some situations to create heuristics for distinguishing between two or more different gestures directed at the same input element or region, thereby enabling multiple different interactions with the same input element to provide a richer set of user interactions and responses. A statement that a particular set of gesture recognition criteria does not require that the intensity of the contact(s) meet a respective intensity threshold in order for the particular gesture recognition criterion to be satisfied does not preclude the simultaneous evaluation of other intensity-dependent gesture recognition criteria to identify other gestures having criteria that are satisfied when the gesture includes a contact having an intensity above the respective intensity threshold. For example, in some situations, a first gesture recognition criterion for a first gesture that does not require that the intensity of the contact(s) meet a respective intensity threshold in order for the first gesture recognition criterion to be satisfied is in competition with a second gesture recognition criterion for a second gesture that is dependent on the contact(s) reaching a respective intensity threshold. In such a competition, a gesture is optionally not recognized as satisfying the first gesture recognition criteria for the first gesture if the second gesture recognition criteria for the second gesture are satisfied first. For example, if the contact reaches the individual intensity threshold before it moves the predetermined amount of movement, a deep press gesture is detected rather than a swipe gesture. Conversely, if the contact moves the predetermined amount of movement before it reaches the individual intensity threshold, a swipe gesture is detected rather than a deep press gesture. Even in such a situation, the first gesture recognition criteria for the first gesture still do not require that the intensity of the contact(s) meet the individual intensity threshold for the first gesture recognition criteria to be satisfied, because if the contact remains below the individual intensity threshold until the end of the gesture (e.g., a swipe gesture with a contact that does not increase in intensity to above the individual intensity threshold), the gesture will have been recognized by the first gesture recognition criteria as a swipe gesture.In that way, a particular gesture recognition criterion that does not require the intensity of the contact(s) to meet a particular intensity threshold in order for the particular gesture recognition criterion to be satisfied may still be dependent on the intensity of the contact with respect to an intensity threshold in the sense that (A) in some circumstances it may ignore the intensity of the contact with respect to an intensity threshold (e.g., for a tap gesture) and / or (B) in some circumstances the particular gesture recognition criterion (e.g., for a long press gesture) will not function if a competing set of intensity-dependent gesture recognition criteria (e.g., for a deep press gesture) recognizes an input as corresponding to an intensity-dependent gesture before the particular gesture recognition criterion recognizes a gesture corresponding to the input (e.g., for a long press gesture that competes with a deep press gesture for recognition).
[0074] Graphics module 132 includes various known software components for rendering and displaying graphics on touch-sensitive display system 112 or other display, including components for modifying the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual characteristics) 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, and animations.
[0075] In some embodiments, graphics module 132 stores data representing the graphics to be used. Each graphic is, optionally, assigned a corresponding code. Graphics module 132 receives one or more codes specifying the graphics to be displayed, including, as appropriate, coordinate data and other graphic property data, from an application or the like, and then generates screen image data for output to display controller 156.
[0076] The haptic feedback module 133 includes various software components that generate instructions (e.g., instructions used by the haptic feedback controller 161) that use the tactile output generator(s) 167 to create tactile outputs at one or more locations on the device 100 in response to user interactions with the device 100.
[0077] Text input module 134 is optionally a component of graphics module 132 and provides a soft keyboard for entering text in various applications (e.g., contacts 137, email 140, IM 141, browser 147, and any other application requiring text input).
[0078] 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 calling, to the camera 143 as photo / video metadata, and to applications that provide location-based services, such as a weather widget, a local yellow pages widget, and a maps / navigation widget).
[0079] Application 136 optionally includes the following modules (or sets of instructions), or a subset or superset thereof: ● a contacts module 137 (sometimes called an address book or contact list); ● Telephone module 138, ● Videoconferencing module 139; ● an email client module 140; ● Instant messaging (IM) module 141; ● Training support module 142; ● a camera module 143 for still and / or video images; ● Image management module 144; ● Browser module 147, ● Calendar module 148, ● a widget module 149, optionally including one or more of a weather widget 149-1, a stock price widget 149-2, a calculator widget 149-3, an alarm clock widget 149-4, a dictionary widget 149-5, and other widgets obtained by the user, as well as user-created widgets 149-6; ● a widget creation module 150 for creating user-created widgets 149-6; ● Search module 151, ● A video and music player module 152, optionally consisting of a video player module and a music player module; ● Memo module 153, Map module 154, and / or ● Online video module 155.
[0080] Examples of other applications 136 optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA-enabled applications, encryption, digital rights management, voice recognition, and voice duplication.
[0081] Contacts module 137, along with touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, includes executable instructions for managing an address book or contact list (e.g., stored in memory 102 or in memory 370 in application internal state 192 of contacts module 137), including adding a name(s) to the address book, deleting a name(s) from the address book, associating phone number(s), email address(es), physical address(es), or other information with a name, associating a picture with a name, categorizing and sorting names, providing phone numbers and / or email addresses to initiate and / or facilitate communication by phone 138, video conference 139, email 140, or IM 141, and the like.
[0082] In cooperation with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, telephone module 138 includes executable instructions for entering a sequence of characters corresponding to a telephone number, accessing one or more telephone numbers in address book 137, modifying an entered telephone number, dialing each telephone number, conducting a conversation, and disconnecting or hanging up when the conversation is completed. As discussed above, the wireless communication optionally uses any of a number of communication standards, protocols, and technologies.
[0083] In cooperation with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch-sensitive display system 112, display controller 156, light sensor(s) 164, light sensor controller 158, contact module 130, graphics module 132, text input module 134, contact list 137, and telephone module 138, videoconferencing module 139 contains executable instructions to initiate, conduct, and terminate a videoconference between a user and one or more other participants according to the user's commands.
[0084] In conjunction with RF circuitry 108, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, email client module 140 contains executable instructions for creating, sending, receiving, and managing emails in response to user commands. In conjunction with image management module 144, email client module 140 greatly facilitates the creation and sending of emails with still or video images captured by camera module 143.
[0085] In cooperation with RF circuitry 108, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, instant messaging module 141 includes executable instructions for entering a series of characters corresponding to an instant message, modifying previously entered characters, sending each instant message (e.g., using Short Message Service (SMS) or Multimedia Message Service (MMS) protocols for telephone-based instant messaging, or using XMPP, SIMPLE, Apple Push Notification Service (APNs), or IMPS for Internet-based instant messaging), receiving instant messages, and viewing received instant messages. In some embodiments, sent and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments, such as those supported by MMS and / or Enhanced Messaging Service (EMS). As used herein, "instant messaging" refers to both telephone-based messaging (e.g., messages sent using SMS or MMS) and Internet-based messaging (e.g., messages sent using XMPP, SIMPLE, APNs, or IMPS).
[0086] In cooperation with the RF circuitry 108, the touch-sensitive display system 112, the display controller 156, the contact module 130, the graphics module 132, the text input module 134, the GPS module 135, the map module 154, and the video and music player module 152, the training support module 142 includes executable instructions to create workouts (e.g., having time, distance, and / or calorie burn goals), communicate with training sensors (in the sports device and the smart watch), receive training sensor data, calibrate sensors used to monitor the workouts, select and play music for the workouts, and display, store, and transmit training data.
[0087] Camera module 143, along with touch-sensitive display system 112, display controller 156, light sensor(s) 164, light sensor controller 158, contact module 130, graphics module 132, and image management module 144, contain executable instructions to capture still images or videos (including video streams) and store them in memory 102, change characteristics of the still images or videos, and / or delete still images or videos from memory 102.
[0088] Image management module 144, along with touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, text input module 134, and camera module 143, contain executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, labeling, deleting, presenting (e.g., in a digital slide show or album), and storing still and / or video images.
[0089] Browser module 147, together with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, and text input module 134, contains executable instructions for browsing the Internet according to a user's commands, including retrieving, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.
[0090] Calendar module 148, along with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, email client module 140, and browser module 147, contain executable instructions to create, display, modify, and store calendars and data associated with calendars (e.g., calendar items, to-do lists, etc.) according to a user's instructions.
[0091] Together with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, and browser module 147, widget module 149 is optionally a mini-application downloaded and used by a user (e.g., weather widget 149-1, stock price widget 149-2, calculator widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5), or a mini-application created by a user (e.g., user-created widget 149-6). In some embodiments, a widget includes a Hypertext Markup Language (HTML) file, a Cascading Style Sheets (CSS) file, and a JavaScript file. In some embodiments, a widget includes an Extensible Markup Language (XML) file and a JavaScript file (e.g., Yahoo! Widget).
[0092] In cooperation with RF circuitry 108, touch-sensing display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, and browser module 147, widget creation module 150 contains executable instructions for creating widgets (e.g., turning user-specified portions of a web page into widgets).
[0093] In cooperation with touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, and text input module 134, search module 151 contains executable instructions to search for text, music, sound, images, video, and / or other files in memory 102 that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with a user's commands.
[0094] In conjunction with touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, video and music player module 152 contains executable instructions that enable a user to download and play recorded music or other sound files stored in one or more file formats, such as MP3 or AAC files, as well as executable instructions to display, present, or otherwise play videos (e.g., on touch-sensitive display system 112 or on an external display connected wirelessly or via external port 124). In some embodiments, device 100 optionally includes the functionality of an MP3 player, such as an iPod (a trademark of Apple Inc.).
[0095] In cooperation with the touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, notes module 153 contains executable instructions for creating and managing notes, to-do lists, and the like according to user commands.
[0096] In conjunction with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, GPS module 135, and browser module 147, map module 154 contains executable instructions to receive, display, modify, and store maps and map-related data (e.g., driving directions, data about businesses and other points of interest at or near a particular location, and other location-based data) in accordance with a user's instructions.
[0097] In conjunction with touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, text input module 134, email client module 140, and browser module 147, online video module 155 contains executable instructions that enable a user to access, view, receive (e.g., by streaming and / or downloading), and play (e.g., on touch screen 112 or on an external display connected wirelessly or via external port 124) online videos in one or more file formats, such as H.264, and send and otherwise manage emails with links to particular online videos. In some embodiments, instant messaging module 141 is used to send links to particular online videos, rather than email client module 140.
[0098] Each of the above identified modules and applications corresponds to an executable instruction set that performs one or more of the functions described above, as well as the methods described in this application (e.g., computer-implemented methods and other information processing methods described herein). The modules (i.e., instruction sets) need not be implemented as separate software programs, procedures, or modules, and thus various subsets of the modules are optionally combined or otherwise rearranged in various embodiments. In some embodiments, memory 102 optionally stores a subset of the modules and data structures identified above. Additionally, memory 102 optionally stores additional modules and data structures not described above.
[0099] In some embodiments, device 100 is a device in which operation of a predefined set of functions on the device is performed exclusively via a touchscreen and / or touchpad. Using the touchscreen and / or touchpad as the primary input control device for operation of device 100 optionally reduces the number of physical input control devices (push buttons, dials, etc.) on device 100.
[0100] The set of predefined functions performed only through the touchscreen and / or touchpad optionally includes navigation between user interfaces. In some embodiments, the touchpad, when touched by a user, navigates device 100 to a main menu, a home menu, or a root menu from any user interface displayed on device 100. In such embodiments, a "menu button" is implemented using the touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device rather than a touchpad.
[0101] 1B is a block diagram illustrating example components for event processing, according to some embodiments. In some embodiments, memory 102 (in FIG. 1A) or 370 (in FIG. 3) includes an event sorter 170 (e.g., in operating system 126) and a respective application 136-1 (e.g., any of applications 136, 137-155, 380-390 described above).
[0102] Event sorter 170 receives the event information and determines which application 136-1 to deliver the event information to and application view 191 of application 136-1. Event sorter 170 includes an event monitor 171 and an event dispatcher module 174. In some embodiments, application 136-1 includes application internal state 192 that indicates the current application view(s) that are displayed on touch-sensitive display system 112 when the application is active or running. In some embodiments, device / global internal state 157 is used by event sorter 170 to determine which application(s) are currently active, and application internal state 192 is used by event sorter 170 to determine which application view 191 the event information is delivered to.
[0103] In some embodiments, application internal state 192 includes additional information such as one or more of resume information to be used when application 136-1 resumes execution, user interface state information indicating or ready to display information being displayed by application 136-1, state cues that allow a user to return to a previous state or view of application 136-1, and redo / undo cues of previous actions taken by the user.
[0104] Event monitor 171 receives event information from peripherals interface 118. The event information includes information about sub-events (e.g., a user's touch on touch-sensitive display system 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, accelerometer(s) 168, and / or microphone 113 (via audio circuitry 110). Information that peripherals interface 118 receives from I / O subsystem 106 includes information from touch-sensitive display system 112 or a touch-sensitive surface.
[0105] In some embodiments, event monitor 171 sends a request to peripherals interface 118 at predetermined intervals. In response, peripherals interface 118 transmits event information. In other embodiments, peripherals interface 118 transmits event information only when there is a significant event (e.g., receiving an input above a predetermined noise threshold and / or for longer than a predetermined period of time).
[0106] In some embodiments, the event sorter 170 also includes a hit view determination module 172 and / or an active event recognizer determination module 173 .
[0107] Hit view determination module 172 provides software procedures for determining where in one or more views a sub-event occurred when touch-sensitive display system 112 displays more than one view. A view consists of controls and other elements that a user can see on the display.
[0108] Another aspect of a user interface associated with an application is the set of views, sometimes referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application views (of a particular application) in which the touch is detected optionally correspond to programmatic levels within the application's programmatic or view hierarchy. For example, the lowest level view in which the touch is detected is optionally referred to as the hit view, and the set of events that are recognized as suitable inputs is optionally determined based at least in part on the hit view of the initial touch that initiates the touch gesture.
[0109] Hit view determination module 172 receives information related to sub-events of a touch-based gesture. When an application has multiple views organized in a hierarchy, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy that should process the sub-events. In most situations, the hit view is the lowest level view in which the initiating sub-event occurs (i.e., the first sub-event in a series of sub-events that form an event or potential event). Once a hit view is identified by the hit view determination module, 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.
[0110] Active event recognizer determination module 173 determines which view(s) in the view hierarchy should receive a particular set of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive a particular set of sub-events. In other embodiments, active event recognizer determination module 173 determines that all views that contain the physical location of the sub-event are actively participating views, and therefore all actively participating views should receive a particular set of sub-events. In other embodiments, even if the touch sub-event is entirely confined to the area associated with one particular view, views higher in the hierarchy still remain actively participating views.
[0111] Event dispatcher module 174 dispatches the event information to event recognizers (e.g., event recognizer 180). In embodiments that include active event recognizer determination module 173, event dispatcher module 174 delivers the event information to the event recognizers determined by active event recognizer determination module 173. In some embodiments, event dispatcher module 174 stores event information obtained by each event receiver module 182 in an event queue.
[0112] In some embodiments, operating system 126 includes event sorter 170. Alternatively, application 136-1 includes event sorter 170. In yet other embodiments, event sorter 170 is a stand-alone module or is part of another module stored in memory 102, such as contact / motion module 130.
[0113] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each including instructions for handling touch events that occur within a separate view of the application's user interface. Each application view 191 of application 136-1 includes one or more event recognizers 180. Typically, a separate application view 191 includes multiple event recognizers 180. In other embodiments, one or more of the event recognizers 180 are part of a separate module, such as a user interface kit (not shown) or a higher level object from which application 136-1 inherits methods and other properties. In some embodiments, a separate event handler 190 includes one or more of a data updater 176, an object updater 177, a GUI updater 178, and / or event data 179 received from event sorter 170. Event handler 190 optionally utilizes or calls data updater 176, object updater 177, or GUI updater 178 to update application internal state 192. Instead, one or more of the application views 191 include one or more separate event handlers 190. Also, in some embodiments, one or more of the data updater 176, the object updater 177, and the GUI updater 178 are included in the separate application views 191.
[0114] A separate event recognizer 180 receives event information (e.g., event data 179) from event sorter 170 and identifies an event from the event information. Event recognizer 180 includes an event receiver 182 and an event comparator 184. In some embodiments, event recognizer 180 also includes at least a subset of metadata 183 and event delivery instructions 188 (optionally including sub-event delivery instructions).
[0115] The event receiver 182 receives event information from the event sorter 170. The event information includes information about a sub-event, e.g., a touch or a movement of a touch. Depending on the sub-event, the event information also includes additional information, such as the location of the sub-event. When the sub-event involves a movement of a touch, the event information also optionally includes the speed and direction of the sub-event. In some embodiments, the event includes a rotation of the device from one orientation to another (e.g., from portrait to landscape or vice versa), and the event information includes corresponding information about the current orientation of the device (also referred to as the device's pose).
[0116] The event comparator 184 compares the event information to predefined event or sub-event definitions and determines the event or sub-event or determines or updates the state of the event or sub-event based on the comparison. In some embodiments, the event comparator 184 includes an event definition 186. The event definition 186 includes definitions of events (e.g., a predefined set of sub-events), such as event 1 (187-1) and event 2 (187-2). In some embodiments, the sub-events in event 187 include, for example, touch start, touch cancel, touch move, touch stop, and multiple touches. In one example, the definition for event 1 (187-1) is a double tap on a displayed object. The double tap includes, for example, a first touch (touch start) for a predefined stage on the displayed object, a first lift-off (touch end) for a predefined stage, a second touch (touch start) for a predefined stage on the displayed object, and a second lift-off (touch end) for a predefined stage. In another example, a definition of event 2 (187-2) is a drag on a displayed object. Drag includes, for example, a touch (or contact) of a predetermined degree on a displayed object, a movement of the touch across the touch-sensitive display system 112, and a lift-off of the touch (end of the touch). In some embodiments, the event also includes information regarding one or more associated event handlers 190.
[0117] In some embodiments, event definition 187 includes definitions of events for individual 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 in which three user interface objects are displayed on touch-sensitive display system 112, when a touch is detected on touch-sensitive display system 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 separate event handler 190, event comparator 184 uses the results of the hit test to determine which event handler 190 to activate. For example, event comparator 184 selects the event handler associated with the sub-event and object that triggers the hit test.
[0118] In some embodiments, each event 187 definition also includes a delay action that delays delivery of the event information until it is determined whether a set of sub-events corresponds to the event type of the event recognizer.
[0119] If the individual event recognizer 180 determines that the sequence of sub-events does not match any of the events in the event definition 186, the individual event recognizer 180 enters an event disabled, event failed, or event finished state and thereafter ignores the next sub-event of the touch-based gesture. In this situation, any other event recognizers that remain active for the hit view continue to track and process sub-events of the ongoing touch gesture.
[0120] In some embodiments, individual event recognizers 180 include metadata 183 with configurable properties, flags, and / or lists that indicate to actively participating event recognizers how the event delivery system should perform sub-event delivery. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how event recognizers interact with each other or are allowed to interact with each other. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how sub-events are delivered to various levels in a view or programmatic hierarchy.
[0121] In some embodiments, the individual event recognizer 180 activates an event handler 190 associated with an event when one or more particular sub-events of the event are recognized. In some embodiments, the individual event recognizer 180 delivers event information associated with the event to the event handler 190. Activating the event handler 190 is separate from sending (and postponing sending) the sub-events to the individual hit view. In some embodiments, the event recognizer 180 pops a flag associated with the recognized event, and the event handler 190 associated with the flag catches the flag and performs a predefined process.
[0122] In some embodiments, the event delivery instructions 188 include sub-event delivery instructions that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery instructions deliver the event information to an event handler associated with a set of sub-events or to an actively participating view. The event handler associated with the set of sub-events or the actively participating view receives the event information and performs a predetermined process.
[0123] In some embodiments, data updater 176 creates and updates data used by application 136-1. For example, data updater 176 updates phone numbers used by contacts module 137 or stores video files used by video and music player module 152. In some embodiments, object updater 177 creates and updates objects used by application 136-1. For example, object updater 177 creates new user interface objects or updates the positions of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends the display information to graphics module 132 for display on the touch-sensitive display.
[0124] In some embodiments, event handler(s) 190 includes or has access to data updater 176, object updater 177, and GUI updater 178. In some embodiments, data updater 176, object updater 177, and GUI updater 178 are included in a single module of an individual application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.
[0125] It should be understood that the foregoing description of event processing of a user's touch on a touch-sensitive display also applies to other forms of user input for operating multifunction device 100 using input devices, not all of which are initiated on a touch screen. For example, mouse movements and mouse button presses, contact movements such as tapping, dragging, scrolling on a touchpad, optionally coordinated with single or multiple presses or holds of a keyboard, pen stylus input, device movements, verbal commands, detected eye movements, biometric input, and / or any combination thereof, are optionally utilized as inputs corresponding to sub-events that define the event to be recognized.
[0126] FIG. 2 illustrates portable multifunction device 100 having a touch screen (e.g., touch-sensitive display system 112, FIG. 1A ), according to some embodiments. The touch screen optionally displays one or more graphics in user interface (UI) 200. In these embodiments, as well as those described below, a user is enabled to select one or more of the graphics by making a gesture on the graphics, for example, with one or more fingers 202 (not drawn to scale) or one or more styluses 203 (not drawn to scale). In some embodiments, selection of the one or more graphics is performed when the user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (left to right, right to left, upwards and / or downwards), and / or rolling of a finger in contact with device 100 (right to left, left to right, upwards and / or downwards). In some implementations or situations, accidental contact with a graphic does not select the graphic, for example, a swipe gesture sweeping over an application icon optionally does not select the corresponding application when the gesture corresponding to selection is a tap.
[0127] Device 100 also optionally includes one or more physical buttons, such as a "home" or menu button 204. As mentioned above, menu button 204 is optionally used to navigate to any application 136 in a set of applications optionally running on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on a touch screen display.
[0128] In some embodiments, device 100 includes a touchscreen display, a menu button 204 (sometimes referred to as a home button 204), a push button 206 for powering the device on / off and locking the device, a volume control button(s) 208, a subscriber identity module (SIM) card slot 210, a headset jack 212, and an external docking / charging port 124. Push button 206 is optionally used to power the device on / off by pressing and holding the button down for a predefined period of time, to lock the device by pressing and releasing the button before the predefined time has elapsed, and / or to unlock the device or initiate an unlocking process. In some embodiments, device 100 also accepts verbal input through microphone 113 to activate or deactivate some features. Device 100 also optionally includes one or more contact intensity sensors 165 that detect the intensity of a contact on touch-sensitive display system 112 and / or one or more tactile output generators 167 that generate a tactile output to a user of device 100.
[0129] FIG. 3 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface, according to some embodiments. Device 300 need not be portable. In some embodiments, device 300 is a laptop computer, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a child's learning toy), a gaming system, or a control device (e.g., a home or commercial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, memory 370, and one or more communication buses 320 for interconnecting these components. Communication bus 320 optionally includes circuitry (sometimes referred to as a chipset) that interconnects and controls communication between system components. Device 300 includes input / output (I / O) interfaces 330, including a display 340, which is typically a touchscreen display. I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350, as well as a touchpad 355, a tactile output generator 357 for generating tactile output on device 300 (e.g., similar to tactile output generator(s) 167 described above with reference to FIG. 1A), sensors 359 (e.g., optical sensors, acceleration sensors, proximity sensors, touch-sensitive sensors, and / or contact intensity sensors similar to contact intensity sensor(s) 165 described above with reference to FIG. 1A). Memory 370 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access solid-state memory devices, and optionally includes non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. Memory 370 optionally includes one or more storage devices located remotely from CPU(s) 310.In some embodiments, memory 370 stores programs, modules, and data structures similar to, or a subset of, the programs, modules, and data structures stored in memory 102 of portable multifunction device 100 (FIG. 1A). Additionally, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunction device 100. For example, memory 370 of device 300 optionally stores drawing module 380, presentation module 382, word processing module 384, website creation module 386, disk authoring module 388, and / or spreadsheet module 390, while memory 102 of portable multifunction device 100 (FIG. 1A) optionally does not store those modules.
[0130] Each of the above-identified elements in FIG. 3 is optionally stored in one or more of the memory devices mentioned above. Each of the above-identified modules corresponds to an instruction set that performs the functions described above. The above-identified modules or programs (i.e., instruction sets) need not be implemented as separate software programs, procedures, or modules, and thus various subsets of those modules are optionally combined or otherwise rearranged in various embodiments. In some embodiments, memory 370 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 370 optionally stores additional modules and data structures not described above.
[0131] Attention is now directed to embodiments of a user interface (“UI”) that is optionally implemented on portable multifunction device 100.
[0132] 4A shows an exemplary user interface for a menu of applications on portable multifunction device 100, according to some embodiments. A similar user interface is optionally implemented on device 300. In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof: ● signal strength indicator(s) for wireless communication(s), such as cellular and Wi-Fi signals; ● Time, ● Bluetooth (registered trademark) indicator, ● Battery status indicator, ● Tray 408 with icons of frequently used applications, such as: o An icon 416 for the phone module 138, labeled "Phone", optionally including an indicator 414 of the number of missed calls or voicemail messages; o An icon 418 of the email client module 140, labeled "Mail", optionally including an indicator 410 of the number of unread emails; ○ An icon 420 for the Browser module 147, labeled "Browser"; and ○ An icon 422 of the video and music player module 152 labeled "Music", and ● Icons of other applications, such as: ○ Icon 424 of IM module 141, labeled "Messages"; ○ Icon 426 of the calendar module 148, labeled "Calendar", ○ Icon 428 of the image management module 144, labeled "Photos"; ○ An icon 430 of the camera module 143, labeled "camera"; ○ Icon 432 of the online video module 155, labeled "Online Video"; ○ Icon 434 of Stocks widget 149-2, labeled "Stocks"; ○ Icon 436 of map module 154, labeled "Map"; ○ Icon 438 of Weather Widget 149-1, labeled "Weather"; ○ Icon 440 of alarm clock widget 149-4, labeled "Clock"; ○ Icon 442 of Training Support Module 142, labeled "Training Support"; ○ An icon 444 of the Notes module 153, labeled "Notes"; and o An icon 446 for a settings application or module that provides access to settings related to the device 100 and its various applications 136.
[0133] 4A are merely examples. For example, other labels are optionally used for the various application icons. In some embodiments, the labels for individual application icons include the name of the application that corresponds to the individual application icon. In some embodiments, the label of a particular application icon is different from the name of the application that corresponds to that particular application icon.
[0134] FIG. 4B illustrates an example user interface on a device (e.g., device 300, FIG. 3) having a touch-sensitive surface 451 (e.g., tablet or touchpad 355, FIG. 3) separate from a display 450. Although many of the following examples are given with reference to input on touchscreen display 112 (where the touch-sensitive surface and display are combined), in some embodiments, the device detects input on a touch-sensitive surface separate from the display, as shown in FIG. 4B. In some embodiments, the touch-sensitive surface (e.g., 451 in FIG. 4B) has a major axis (e.g., 452 in FIG. 4B) that corresponds to a major axis (e.g., 453 in FIG. 4B) on the display (e.g., 450). According to those embodiments, the device detects contact with touch-sensitive surface 451 (e.g., 460 and 462 in FIG. 4B) at positions that correspond to respective locations on the display (e.g., in FIG. 4B, 460 corresponds to 468 and 462 corresponds to 470). In this manner, when the touch-sensitive surface is separate from the display, user input (e.g., contacts 460 and 462, and their movement) detected by the device on the touch-sensitive surface (e.g., 451 in FIG. 4B ) is used by the device to operate a user interface on the display (e.g., 450 in FIG. 4B ) of the multifunction device. It is to be understood that similar methods are optionally used for the other user interfaces described herein.
[0135] In addition, while the following examples are given primarily with reference to finger input (e.g., finger touch, finger tap gesture, finger swipe gesture, etc.), it should be understood that in some embodiments, one or more of those finger inputs are replaced with input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture is optionally replaced by a mouse click (e.g., instead of a touch) followed by movement of a cursor along the path of the swipe (e.g., instead of a movement of the touch). As another example, a tap gesture is optionally replaced by a mouse click (e.g., instead of detecting a touch and then ceasing to detect the touch) while the cursor is located over the location of the tap gesture. Similarly, it should be understood that when multiple user inputs are detected simultaneously, multiple computer mice are optionally used simultaneously, or mice and finger touches are optionally used simultaneously.
[0136] The term "focus selector" as used herein refers to an input element that indicates the current portion of a user interface with which a user is interacting. In some implementations involving a cursor or other location marker, the cursor functions as a "focus selector" such that when an input (e.g., a press input) is detected on a touch-sensitive surface (e.g., touchpad 355 in FIG. 3 or touch-sensitive surface 451 in FIG. 4B) while the cursor is over a particular user interface element (e.g., a button, window, slider, or other user interface element), the particular user interface element is adjusted according to the detected input. In some implementations involving a touchscreen display (e.g., touch-sensitive display system 112 in FIG. 1A or touchscreen in FIG. 4A) that enables direct interaction with user interface elements on the touchscreen display, a contact detected on the touchscreen functions as a "focus selector" such that when an input (e.g., a press input by contact) is detected on the touchscreen display at the location of a particular user interface element (e.g., a button, window, slider, or other user interface element), the particular user interface element is adjusted according to the detected input. In some implementations, focus is moved from one region of the user interface to another region of the user interface (e.g., by using the tab or arrow keys to move focus from one button to another) without a corresponding cursor movement or contact movement on the touchscreen display. In these implementations, the focus selector moves to follow the movement of focus between various regions of the user interface. Regardless of the specific form taken by the focus selector, the focus selector is generally a user interface element (or a contact on a touchscreen display) that is controlled by the user to communicate the user's intended interaction with the user interface (e.g., by indicating to the device which element of the user interface the user intends to interact with).For example, positioning of a focus selector (e.g., a cursor, contact, or selection box) over an individual button while a press input is detected on a touch-sensitive surface (e.g., a touchpad or touchscreen) indicates that the user intends to activate that individual button (and not other user interface elements shown on the device's display).
[0137] In some embodiments, the device's response to an input detected by the device depends on criteria based on the contact intensity during the input. For example, for some "light press" inputs, the intensity of the contact during the input that exceeds a first intensity threshold triggers a first response. In some embodiments, the device's response to an input detected by the device depends on criteria including both the contact intensity during the input and time-based criteria. For example, for some "deep press" inputs, the intensity of the contact during the input that exceeds a second intensity threshold that is greater than the first intensity threshold for a light press triggers a second response only if a delay time has elapsed between meeting the first intensity threshold and meeting the second intensity threshold. This delay time is typically less than 200 ms (milliseconds) in time (e.g., 40 ms, 100 ms, or 120 ms depending on the magnitude of the second intensity threshold, with the delay time increasing as the second intensity threshold increases). This delay time helps to avoid accidental recognition of a deep press input. As another example, for some "deep press" inputs, there is a period of reduced sensitivity that occurs after the time the first intensity threshold is met. During the time period of decreased sensitivity, the second intensity threshold is increased. This temporary increase in the second intensity threshold also serves to avoid accidental deep pressure inputs. For other deep pressure inputs, the response to the detection of a deep pressure input does not depend on a time-based criterion.
[0138] In some embodiments, one or more of the input intensity thresholds and / or corresponding outputs vary based on one or more factors, such as user settings, contact movement, input timing, running application, rate at which intensity is applied, number of simultaneous inputs, user history, environmental factors (e.g., ambient noise), position of focus selector, etc. Exemplary factors are described in U.S. Patent Application Publication Nos. 14 / 399,606 and 14 / 624,296, which are incorporated herein by reference in their entireties. User Interface and Related Processes
[0139] Attention is now directed to embodiments of user interfaces ("UI") and associated processes that may be implemented on an electronic device, such as portable multifunction device 100 or device 300, that includes a display and a touch-sensitive surface, (optionally) one or more tactile output generators for generating tactile output, and (optionally) one or more sensors for detecting the intensity of contact with the touch-sensitive surface.
[0140] 5A1-5D5, 5E1-5E8, 5F1-5F2, 5G1-5G4, 5H, 5I1-5I10, 6A-6D, and 7A-7D illustrate exemplary user interfaces for automatically providing shared content to applicable applications, according to some embodiments. The user interfaces in those figures are used to illustrate processes described below, including those in 8A-8D, 9A-9F, 10A-10E, and 11A-11D. For ease of explanation, some of the embodiments are discussed with reference to operations performed on a device having touch-sensitive display system 112. In such embodiments, the focus selector is optionally a respective finger or stylus contact, a representative point corresponding to a finger or stylus contact (e.g., a centroid of a respective contact or a point associated with a respective contact), or a centroid of two or more contacts detected on touch-sensitive display system 112. However, a similar operation is optionally performed on a device having display 450 and separate touch-sensitive surface 451 in response to detecting a contact on touch-sensitive surface 451 while displaying the user interface shown in the figure on display 450, along with a focus selector.
[0141] 5A1-5D5 show example user interfaces for sharing music media content received in a messaging application to a music media application according to some embodiments.
[0142] FIG. 5A1 illustrates an exemplary user interface for a menu of applications on portable multifunction device 100, according to some embodiments. A similar user interface is optionally implemented on device 300. In particular, FIG. 5A1 illustrates user interface page 5050 of a multi-page home screen user interface. User interface page 5050 includes several application icons (e.g., application icons 5008a-5008p and application icons 5008q-5008t) optionally arranged in a pre-set layout (e.g., application icons 5008a-5008p are arranged in a 5×4 grid, and application icons 5008q-5008t are arranged in a 1×4 grid in tray 509). In some embodiments, application icons 5008a-5008p are user selected and placed in their respective positions on user interface page 5050 according to user input. In some embodiments, application icons 5008q-t are system selected and automatically placed in their respective positions in the navigation bar, dock, or tray 409, e.g., a menu of applications that appears at the bottom of user interface page 5050. In some embodiments, application icons 5008q-t may also be selected by the user. In some embodiments, when an icon is displayed in tray 509, the same icon is not displayed in the remainder of user interface page 5050. In some embodiments, an icon is displayed in both trays 509, and the same icon is displayed in another portion of user interface page 5050 (e.g., an icon may be displayed in two separate locations in the user interface). In some embodiments, a dock or tray 509 shown at the bottom of user interface page 5050 is shown in the same location on display 112 on other pages of the multi-page home screen user interface.
[0143] In some embodiments, the tray 509 includes application icons for frequently used applications such as: ○ Icon 5008q for phone module 138 labeled "Phone", ○ Icon 5008r of email client module 140 labeled "Mail", ○ Icon 5008s of the Browser module 147 labeled "Browser", and ○ Icon 5008t of contact module 137.
[0144] In some embodiments, the user interface 5050 further includes the following application icons, or a subset or superset thereof: ○ An icon 5008a for the video and music player module 152 labeled "Music", ○ Icon 5008b of the calendar module 148 labeled "Calendar", ○ Icon 5008c of the image management module 144 labeled "Photos", ○ Icon 5008d of IM module 141 labeled "Messages", ○ Icon 5008e of the online video module 155 labeled "Online Video", ○ Icon 5008f of Stock Price Widget 149-2 labeled "Stock Price"; ○ Icon 5008g of map module 154 labeled "Map", ○ Icon of this module labeled "Book" 5008h, ○ Icon 5008i of alarm clock widget 149-4 labeled "Clock", ○ Icon 5008j of Training Support module 142, labeled "Training Support", ○ 5008k icons of the memo module 153 labeled "Memo", ○ Icon 5008l of weather widget 149-1 labeled "Weather", ○ Icon 5008m of calculator widget 149-3 labeled "Calculator", ○ a podcast application or module icon 5008n labeled "Podcasts", ○ Icon of the application store module labeled "App Store" 5008o, ○ An icon for a news application or module labeled "News" 5008p.
[0145] In some embodiments, more applications are available on electronic device 100 or 300 than those shown on user interface page 5050. The additional applications may be represented by other application icons available on other user interface pages of the multi-page home screen. Some application icons may be displayed on more than one user interface page of the multi-page home screen.
[0146] It should be noted that the icon labels associated with icons 5008a-5008t in FIG. 5A1 are merely examples. For example, other labels are optionally used for various application icons. In some embodiments, the labels for individual application icons include the name of the application that corresponds to the individual application icon. In some embodiments, the label of a particular application icon is different from the name of the application that corresponds to that particular application icon. The application icon labels are selected to indicate relevant functionality of the corresponding application.
[0147] It will also be appreciated that the term "application icon" is used to describe a user interface element that represents a corresponding application, and the term application is used to describe a feature or module that is available, stored, and / or installed on electronic device 100 or 300 (e.g., any of applications 136, 137-155, 380-390 described above). It will also be appreciated that activating an individual application icon of some of the application icons (e.g., 5008a-5008t) replaces a display of the application corresponding to the individual application icon with a display of the individual page of the multi-page home screen user interface in which the individual application icon is displayed. In some embodiments, displaying the application includes displaying a view of the application or a user interface of the application.
[0148] 5A1-5A3 illustrate an example of navigating to a particular conversation in an instant messaging application from a user interface page (eg, user interface page 5050) on a multi-page home screen according to some embodiments.
[0149] FIGURE 5A1 illustrates a tap input by contact 5002. The tap input by contact 5002 is detected at a location on the touch screen that corresponds to an instant messaging application represented by application icon 5008d. In response to the tap input by contact 5002, the instant messaging application is opened, launched, or activated, and the electronic device stops displaying user interface pages on the multi-page home screen and displays a user interface of the instant messaging application, i.e., messaging user interface 5040 shown in FIGURE 5A2.
[0150] In some embodiments, the communication is received in an instant messaging application represented by application icon 5008d. The incoming communication may be sent by a contact of the user associated with the electronic device, or by another user who is not a contact, e.g., not stored as a known contact in the user's electronic device. In some embodiments, the contact and information about the contact is stored in a contact application (e.g., contacts module 137). The information about the contact may include one or more phone numbers, one or more email addresses, name, address, and other identifying information for the contact. Contacts are typically stored in the contact application in response to a user input associated with the electronic device (e.g., a user saves contact information to electronic device 100 or 300). Contacts are users of remote electronic devices similar to device 100 or 300. Contacts optionally connect with a user associated with the electronic device through a communication application, such as an instant messaging application (e.g., represented by icon 5008d), a social media application, and / or an email application (e.g., represented by application icon 5008r) installed on the device.
[0151] The incoming communication may include content shared by a contact of the user associated with the electronic device. The incoming communication may also include shared content from others who are not contacts of the user. Note that sharing content (e.g., providing a content recommendation) does not necessarily imply a positive review of the content being shared. More broadly, the shared content may be a content item that may be shared from one device to another device and interacted with in other applications. In some embodiments, the content may be shared from one device to another device by a communication application (e.g., an instant messaging application represented by 5008d or 5008r, an email application). The sharing device may send a copy of the content item, a representation of the content item, a link to the content item, or other identifier of the content item to the receiving device, and the receiving device may determine that the content is readable by a corresponding application designed to open such content. When the content is shared from a device that is not a contact of the receiving device, the receiving device may determine that the content should not be sent to a corresponding application to open the content according to user settings.
[0152] In some implementations, content may be airdropped (e.g., via WiFi or Bluetooth) or sent from one device to another by NFC or UWB, hi other implementations, content may be shared using other applications instead of or in addition to communication applications.
[0153] 5A2-5A3 show messaging user interface 5040 including several conversations 5006a-5006f. Conversations 5006a-5006f are between a user associated with the electronic device and one or more contacts stored in contacts module 137. In some embodiments, a conversation may be between a user and one contact, for example, conversation 5006a is between the user and contact "Alex" represented by avatar 5003a. Conversation 5006c is between the user and contact "Lucy" represented by avatar 5003c. Conversation 5006d is between the user and contact "Joe" represented by avatar 5003c, and conversation 5006e is between the user and contact "Tony" represented by avatar 5003e. In some embodiments, a conversation may be between a user and two or more contacts. For example, conversations "Costa Rica Travel Group" 5006b and "Family Group" 5006f are group chats with more than one contact participating in the conversation. Group chats are represented by multiple avatars to indicate that more than two users are participating in the conversation, e.g., "Costa Rica Travel Group" 5006b is represented by a group of avatars 5003b and "Family Group" 5006f is represented by a group of avatars 5003f.
[0154] 5A3 illustrates a tap input by contact 5010 detected at a location on a touchscreen corresponding to a conversation 5006a between a user of the electronic device and contact "Alex." In response to the tap input by contact 5010, the electronic device opens the conversation 5006a in another user interface of a messaging application. For example, the tap input by contact 5010 causes the electronic device to stop displaying messaging user interface 5040 and display conversation user interface 5042.
[0155] FIG. 5A4 illustrates at least a portion of a conversation 5006a including several shared content items of different types shared by contact “Alex” according to some embodiments. According to some embodiments, the conversation 5006a is displayed in a conversation user interface 5042. For example, the conversation user interface 5042 illustrates several messages 5001a-5001k exchanged between the contact “Alex” and the user of the electronic device. The conversation 5006a is stored in a messaging application, and the user of the electronic device can return to continue the conversation, respond to one of the messages, review the content of the conversation, copy the content of the conversation, or delete one or more messages in the conversation. In some embodiments, the conversation 5006a includes several shared content items shared with the user of the electronic device by the contact “Alex” represented by avatar 5041. For example, message 5001a from contact "Alex" shares a podcast with the user of the electronic device, where the podcast is represented by a podcast image 5045a and a tiled "Podcast Name-A," and message 5001d from contact "Alex" shares a song with the user of the electronic device, where the song is represented by a song image (e.g., representation 5045b) and is titled "Song Name-A." Message 5001g from contact "Alex" shares an article with the user of the electronic device, where the article is represented by an article image 5045c and is titled "News Article Title-A." In some embodiments, sharing a content item via instant messaging may include sharing a copy of the content item, a representation of the content item, a link to the content item, or other identifier of the content item that is readable by a corresponding application designed or capable of opening such content. For example, a music application such as video and music player module 152 is designed or capable of playing, displaying, or otherwise opening the song represented by the song image (e.g., representation 5045b).The user may tap or otherwise select play button 5045c associated with the song represented by the image (e.g., representation 5045b). Messages 5001c, 5001f, 5001h, and 5001k from the user of the electronic device are visually distinct from messages 5001a, 5001b, 5001d, 5001e, 5001g, and 5001j from contact "Alex."
[0156] In some embodiments, in response to receiving a shared music in a message, such as message 5001d of conversation 5006a, the electronic device automatically makes the music available in a dedicated section for later listening or playback without requiring user input. Music shared with a user (e.g., in different messages, conversations, applications, or by different contacts / users) may be marked as shared or automatically grouped together (e.g., in a data structure) for later display in a music application. For example, if a shared content item meets the criteria (e.g., shared by content and should be sent to an application that can open the content), the user does not need to open the application in which the content was shared, the user does not need to open the message or conversation in which the content was shared, and the user does not need to open the application in which the content can be interacted with and take any proactive actions. When information associated with the shared content is received by the receiving electronic device in one application, the receiving application makes a decision as to where to display the shared content. For example, if the received content is music content, the receiving device can display the content in the application in which the content was received as well as one or more applications specific to music. For example, device 100 may include applications for music service 1, music service 2, and music service 3, but only display shared content on music service 1 and music service 2 without displaying shared content on music service 2.
[0157] In some embodiments, the song shared in message 5001d is automatically made available in one or more music applications (e.g., the music application represented by icon 5008a) without user input. For example, the song shared in message 5001d is automatically made available in the music application without a user selecting or requesting to open or view the shared song. Instead, the receiving device automatically determines the appropriate application or applications to display the content based on sharing settings on the device. The sharing settings may include determining whether the content was shared from a particular user, user type, or group. The sharing settings may also include determining whether to share particular content in one or more particular applications. For example, a user device may have three music applications downloaded to the user device, but only two of the music applications may allow content sharing. When the user device receives the music content, the user device may automatically share the music content with the two music applications for which sharing was previously enabled, but not with the third application (e.g., without sharing the content to one or more applications that do not allow content sharing). For example, as described with reference to FIGS. 7A-7D, a user may select the applications for which content sharing is enabled.
[0158] Once received, the content may be shared automatically by the receiving device, or it may be shared without response to user interaction, e.g., a user selecting the content represented by an image (e.g., representation 5045b), for example, in response to a user selecting an image (e.g., representation 5045b), or in response to a user selecting play button 5045c.
[0159] 5A5 illustrates a tap input by contact 5012 detected at a location on a touch screen that corresponds to a music application represented by icon 5008a on user interface page 5050, according to one embodiment. In response to tap input by contact 5012, the electronic device stops displaying user interface page 5050, opens the music application, and displays a default view of the music application.
[0160] FIG. 5A6 illustrates a default view 5052 of a music application, according to some embodiments, where the default view includes a section for shared content. According to one embodiment, the default view 5052 displays some shared songs or other music (e.g., playlists, albums of songs, etc.) in a dedicated section, such as section 5054. In some embodiments, the default view 5052 of the music application includes a section 5054 dedicated to music that has been shared with the user of the electronic device. In some embodiments, section 5054 is labeled "Shared with You." Section 5054 groups or aggregates music that has been shared with the user of the electronic device into one section. For example, section 5054 displays a representation 5054a of a song shared in message 5001d (shown in FIG. 5A4). In some embodiments, section 5054 displays representations 5054b and 5054c of other music shared in other conversations or in the same conversation, such as music shared in one or more of conversations 5006a-5006f. For example, the song "Song Title-B" represented by song image 5054b is shared by "Joe" in conversation 5006d (shown in FIG. 5A2), and the song "Song Title-C" represented by song image 5054c is shared by two or more contacts in one or more of conversations 5006a-5006f (shown in FIG. 5A2).
[0161] In some embodiments, the default view 5052 includes additional sections for displaying music content, such as a section 5056 that displays a representation of recently played music, or a section 604 "Highlights" (shown in FIG. 5E8) that displays a representation of highlighted content. In some embodiments, the user interface of the music application includes a tray or navigation bar 5057 that includes options 3001a-3001e for selecting different views of the music application, such as a view 3001a for displaying currently playing content, a view 3001b for browsing music in the music application, a view 3001c for playing or browsing radio stations, a view 3001d for viewing a library of saved music, and a search 3001e for searching for artists, playlists, albums, and other music available in the music application.
[0162] In some embodiments, each music item represented in section 5054 (a section dedicated to shared music) is associated with a selectable capsule that provides information or a link to the location (e.g., in a messaging application) where the shared music item was originally shared. For example, shared song "Song Title-A" represented by song image 5054a is associated with selectable capsule 5056a labeled "From Alex". Shared song "Song Title-B" represented by song image 5054b is associated with selectable capsule 5056b labeled "From Joe", and shared song "Song Title-C" is associated with selectable capsule 5056c labeled "From 3 People". In some embodiments, selectable capsule 5056a is located near representation 5054a, selectable capsule 5056b is located near representation 5054b, and selectable capsule 5056c is located near representation 5054c.
[0163] FIG. 5A6 illustrates a tap input by contact 5014 detected at a location on the touch screen corresponding to selectable capsule 5056a labeled "From Alex." In response to the tap input by contact 5014, the electronic device stops displaying the default view 5052 and opens the application in which the content was shared (e.g., a messaging application) at the location in which the content was shared. For example, in some embodiments, in response to the tap input by contact 5014, the electronic device displays a conversation user interface 5042 (shown in FIG. 5A7). Similarly, in some embodiments, in response to a tap input at a location on the touch screen corresponding to selectable capsule 5056b labeled "From Joe," the electronic device stops displaying the default view 5052 and opens a messaging application at the location in which the song "Song Name-B" (represented by song image 5054b) was shared. In some embodiments, in response to a tap input at a location on the touch screen corresponding to the selectable capsule 5056c labeled "From 3 People," the electronic device stops displaying the default view 5054 and displays a disambiguation interface, such as the disambiguation user interface 572 described in further detail in connection with Figures 5F1-5F2.
[0164] FIG. 5A7 illustrates a portion 5042a of a message thread of a conversation 5006a that is displayed in a conversation user interface 5042 in response to a tap input by a contact 5014, according to some embodiments. The tap input by the contact 5014 selects a selectable capsule 5056a, and in response to selecting the selectable capsule 5056a, the electronic device opens the conversation 5006a in a messaging application in which the content was shared. The portion 5042a of the message thread displays both sides of the conversation 5006a in chronological order on one screen. For example, messages from the contact "Alex" are displayed on one side, and messages from the user of the electronic device / computer system are displayed on the other side. The user of the electronic device can enter a text message in field 5059. Additionally, the user of the electronic device can share content by selecting one or more of options 4001a-4001e. For example, a user can share photos by selecting option 4001a, a user can share applications by selecting option 4001b, a user can share music by selecting option 4001c, a user can share games by selecting option 4001d, and a user can share contacts by selecting option 4001e. In some embodiments, a user can tap or select the selectable text "Done" 5043 to return to the default view of the music application, which includes a section 5054 dedicated to shared music.
[0165] Portion 5042a of the message thread of conversation 5006a displays the last sent / received message in chronological order. For example, FIG. 5A7 displays conversation 5006a without scrolling to a previously received message (e.g., message 5001d) that includes the shared song "Song Title-A." In some embodiments, in response to a tap input by contact 5014 (shown in FIG. 5A6), the electronic device displays portion 5042b of the message thread of conversation 5006a at the location of a previously received message (e.g., message 5001d) that includes the shared song "Song Title-A" (described in FIG. 5A8 below).
[0166] FIG. 5A8 shows a portion 5042b of a message thread of a conversation 5006a auto-scrolling to a previously received message 5001d, including a shared song "Song Title-A", represented by representation 5045b. For example, instead of displaying the last sent / received message in chronological order, portion 5042b displays the previous last received message 5001d and messages sent / received before receiving message 5001d, such as previously shown messages 5001c, 5001b, 5001a, and previously not shown messages 5001m and 5001l. Message 5001m indicates that contact "Alex" shared a location (e.g., an address that can be opened in a maps application). In some embodiments, the user can tap or select selectable text "Done" 5043 to return to the default view of the music application, including a section 5054 dedicated to shared music.
[0167] FIG. 5B1 illustrates a portion 5062a of a conversation between contact "Alex" and a user of an electronic device in a conversation user interface 5062, including several in-line replies, according to some embodiments. For example, message 5009b from the user of the electronic device is a reply to message 5009a of contact "Alex". Line 5064 indicates that message 5009b is a reply to message 5009a. Message 5009e is also a reply to message 5009a sent after unrelated message 5009c was sent by contact "Alex". Unrelated message 5009c interrupts the in-line reply thread. To reduce the cognitive burden that this interruption creates, message 5009d is automatically added to the conversation by the electronic device. Message 5009d is the same message as message 5009a (the replied message), shown in dashed lines to indicate that it was not actually sent by contact "Alex" but was merely repeated for visual feedback indicating that the subsequent message is a reply. Line 5066 indicates that message 5009e is a reply to message 5009d. Message 5009f includes the text message "Yup, we're talking about song-A! This is it!" and the shared song "Song Name-D." Message 5009f is a reply to message 5009e, which is indicated by line 5068. Messages 5009g and 5009h are not related to the inline reply thread, and therefore no line is used to indicate that there is no relationship between the messages.
[0168] In some embodiments, as shown in FIG. 5B2, after a message 5009f including the shared song “Song Title-D” is received in a messaging application, a user of the electronic device opens a music application and the electronic device displays a default view of the music application.
[0169] Figure 5B2 illustrates the shared song "Song Title-D" represented by song image 5045d in section dedicated to shared music 5054, as described above in connection with Figure 5A6. The shared song "Song Title-D" is associated with a selectable capsule 5056d labeled "From Alex."
[0170] 5B2 illustrates a tap input by contact 5016 detected at a location on the touch screen corresponding to selectable capsule 5056d labeled "From Alex." In response to tap input by contact 5016, the electronic device stops displaying the default view 5052 and opens a reply user interface of the messaging application at the location where the content was shared. For example, in some embodiments, in response to tap input by contact 5016, the electronic device displays an inline reply user interface 5072 shown in FIG. 5B3.
[0171] In some embodiments, the inline reply user interface 5072 displays only related messages, e.g., messages that are part of the same inline reply thread, such as messages 5009a, 5009b, 5009e, and 5009f. Additionally, the inline reply user interface 5072 auto-scrolls to message 5009f, which includes the shared song "Song Title-D". The inline reply user interface 5072 further shows a keyboard 5079 that the electronic device user can use to enter a reply, and a reply input field 5077. According to one embodiment, the electronic device user can use the inline reply user interface 5072 to send a reply directly to message 5009f, which includes the shared song "Song Title-D".
[0172] FIGURE 5C1 illustrates a tap input by contact 5018 on selectable text 5075 labeled "See All." Selectable text 5075 is displayed in the music application's default view 5052 in a dedicated section 5054 for shared music. Default view 5052 is described with reference to FIGURE 5A6 above. Upon tapping by contact 5018 on selectable text 5075 labeled "See All," the electronic device expands the dedicated section for shared music 5054 to include and display all music shared with the user of the electronic device, as shown in FIGURE 5C2 below.
[0173] 5C2 shows a default view 5052 with an expanded section 5054 for shared music, which is displayed in response to a tap input by contact 5018, as shown in FIG. 5C1. In response to a tap input by contact 5018, the electronic device stops displaying recently played music section 5056 and any other sections that may have been displayed simultaneously with non-expanded section 5054.
[0174] FIG. 5C2 simultaneously displays in the expanded section 5054 for shared music the shared songs displayed in the non-expanded section 5054 and the shared songs not displayed in the non-expanded section 5054. For example, the shared song "Song Title-A" represented by song image 5054a, the shared song "Song Title-B" represented by song image 5054b, and the shared song "Song Title-C" represented by song image 5054c were displayed in the non-expanded section 5054 of FIG. 5C1, while the shared playlist "Playlist Name" represented by playlist image 5054e and the shared song "Song Title-F" represented by song image 5054f were not displayed in the non-expanded section 5054 shown in FIG. 5C1. In some embodiments, FIG. 5C2 shows an indicator 5075a of the number of shared music items. For example, FIG. 5C2 shows that section 5054 for shared music includes five shared music items represented by pictorial representations 5054a, 5054b, 5054c, 5054e, and 5054f.
[0175] FIG. 5C3 illustrates a tap input by contact 5020 detected at a location on the touch screen corresponding to a representation 5054a of the shared song "Song Title-A." The tap input by contact 5020 selects the shared song "Song Title-A." In response to the tap input by contact 5020, the electronic device stops displaying the default view 5052, which includes a section 5054 for shared music. In response to the tap input by contact 5020, the electronic device plays the shared song "Song Title-A" and displays a user interface having a detailed view of the currently playing song, such as user interface 5032 for the currently playing song shown in FIG. 5C4 described below.
[0176] FIG. 5C4 illustrates a user interface 5032 for a currently playing song, represented by image 5035. Image 5035 is the same as image 5045a, but enlarged. User interface 5032 illustrates details 5037 of the currently shared song, such as the song name and an avatar 5039 representing the contact "Alex" who shared the currently playing song, represented by image 5035. In some embodiments, avatar 5039 is selectable and provides a link to a location within the messaging application where the currently playing song was shared. For example, in some embodiments, tapping on avatar 5038 causes the electronic device to stop displaying currently playing song user interface 5032 and display a messaging user interface, such as those described in FIGS. 5A6, 5A7, and 5B3.
[0177] FIGURE 5D1 illustrates a long press input with contact 5022 detected at a location on the touchscreen corresponding to selectable capsule 5056a labeled "From Alex." FIGURE 5D1 illustrates the same default view 5052 of the music application with the shared song "Song Title-A" represented by song image 5054a in section for shared music 5054, as described in connection with FIGURE 5A6.
[0178] FIG. 5D2 illustrates an overlay user interface 5082 including a set of controls 5080 for performing several actions related to the shared song "Song Title-A." In response to a long press input by the contact 5022, the electronic device stops displaying the default view 5052 and displays an overlay user interface 5082 including a set of controls 5080 for performing several actions related to the shared song "Song Title-A" represented by the song image 5054a in the section 5054 (shown in FIG. 5D1). In some embodiments, the overlay user interface 5082 maintains a display of a selectable capsule 5056a associated with the shared song "Song Title-A." For example, a user of the electronic device can return to the conversation in which the song was shared by selecting the selectable capsule 5056a displayed in the overlay user interface 5082.
[0179] In some embodiments, the set of controls 5080 includes a control 5080a for replying to a message in which the song "Song Title-A" was shared, such as message 5001d shown in Figure 5A4 above. In response to tapping or otherwise selecting control 5080a, the electronic device displays a conversation in which the song "Song Title-A" was shared, represented by song image 5054a, such as conversation user interface 5042 described in Figures 5A7 and 5A8, and an inline reply user interface, such as inline reply user interface 5072 shown in Figure 5B3.
[0180] In some embodiments, the set of controls 5080 includes a control 5080b for viewing further details associated with the shared song. Control 5080b is labeled "information card" according to some embodiments. In some embodiments, the set of controls 5080 includes a control 5080c for initiating a shared listening session with the contact "Alex" who shared the song. In a shared listening session, the user of the electronic device and the contact "Alex" can listen to the song simultaneously in a virtual co-presence session.
[0181] In some embodiments, the set of controls 5080 includes a control 5080d for removing the representation 5054a of the shared song "Song Title-A" and the associated selectable capsule 5056a labeled "From Alex" from the collection of shared music. For example, in response to a tap input by contact 5084, the electronic device stops displaying the shared song in the section 5054 for shared music, as shown in FIG. 5D5. In some embodiments, the control 5080d allows a user of the electronic device to disassociate the shared song from the message that shared the song and / or the contact that shared the song.
[0182] FIG. 5D3 illustrates an overlay user interface 5082a that includes a set of controls 5080 as described in FIG. 5D2 above. In some embodiments, the overlay user interface 5082 is displayed in response to a long press input by contact 5022 as illustrated in FIG. 5D1. In some embodiments, the overlay user interface 5082a displays a snippet 5088 of a conversation in which a song was shared, such as an excerpt or portion of conversation 5006a illustrated in conversation user interface 5042. In some embodiments, the snippet 5088 includes a message that shared a song, such as message 5001d (also illustrated in FIG. 5A4 above). In some embodiments, in response to a tap input by contact 5086, the electronic device stops displaying the shared song in section 5054 dedicated to shared music, as illustrated in FIG. 5D5.
[0183] FIG. 5D4 illustrates an overlay user interface 5082b that includes a set of controls 5090 for performing several actions related to the shared song "Song Title-A." The electronic device displays the overlay user interface 5082b in response to a long press input by contact 5022 (shown in FIG. 5D1). In some embodiments, the overlay user interface 5082b further displays an enlarged representation 5035b of the shared song "Song Title-A" and an avatar 5039b representing the contact "Alex" who shared the song represented by the image (e.g., representation 5035b). In some embodiments, the avatar 5039b is selectable and provides a link to a location in the messaging application where the song was shared. For example, in some embodiments, tapping on the avatar 5039b causes the electronic device to stop displaying the overlay user interface 5082b and, according to some embodiments, display a messaging user interface as described in FIG. 5A6, FIG. 5A7, and FIG. 5B3.
[0184] In some embodiments, the set of controls 5090 includes a control 5090a for playing the shared song "Song Title-A", a control 5090b for downloading the song for offline playback and storing the song in the memory of the electronic device, a control 5090c for adding the shared song to a playlist, a control 5090d for playing the next song in the list of songs (the option is displayed if the shared song "Song Title-A" is part of a playlist), and a control 5090d for removing the shared song from the music application's library (control 5090d when the shared song is saved to the library).
[0185] In some embodiments, the electronic device includes a control 5090e for replying to a message in which the song "Song Title-A" was shared, such as message 5001d shown in Figure 5A4 above. In response to tapping or otherwise selecting control 5090e, the electronic device displays the conversation in which the song "Song Title-A" was shared, such as conversation user interface 5042 described in Figures 5A7 and 5A8, and an inline reply user interface, such as inline reply user interface 5072 shown in Figure 5B3.
[0186] In some embodiments, the set of controls 5090 includes a control 5080f for removing the representation 5054a of the shared song "Song Title-A" and the associated selectable capsule 5056a labeled "From Alex" from the collection of shared music. For example, in response to a tap input by contact 5098, the electronic device stops displaying the shared song in the section 5054 for shared music, as shown in FIG. 5D5. In some embodiments, the control 5090f allows a user of the electronic device to disassociate the shared song from the message that shared the song and / or the contact that shared the song.
[0187] FIG. 5D5 shows the default view 5052 of the music application with the shared song "Song Title-A" and associated selectable capsule 5056a (labeled "From Alex") removed from the section dedicated to sharing 5054. In some embodiments, the previously displayed representations 5054b and 5054c have been shifted to the top of the list of shared songs, and the shared song "Song Title-E" appears in the list of shared songs not previously displayed in the section dedicated to shared music 5054.
[0188] 5E1-5E8 illustrate example user interfaces for highlighting a representation of content in a messaging application according to some embodiments.
[0189] FIG. 5E1 illustrates detecting a user input 590 (e.g., a tap input) that selects a user-selectable capsule 5056a. As described above with reference to FIG. 5A6, when selected, the selectable capsule 5056a causes the device 100 to display at least a portion of a message thread (e.g., a conversation history) in which a separate media item (e.g., song A) was shared. For example, in response to the user input 590, the device 100 displays the user interface shown in FIG. 5E2, including a message (e.g., message 5001d) in which song A (e.g., also referred to as "song name-A") was shared. In some embodiments, in response to the user input 590, the device 100 switches from a media application (e.g., a music application) to a communication application (e.g., a messaging application) in which the media item was shared. In some embodiments, in response to the user input 590, the device 100 replaces the display of a portion of the user interface to display the portion of the communication thread in which the media item was shared (e.g., the portion of the communication thread is displayed overlaid on a portion of the currently displayed media application).
[0190] FIG. 5E2 illustrates receiving user input 592 (eg, a long press user input) selecting message 5001d.
[0191] In response to detecting user input 592, device 100 displays a tapback menu, e.g., a plurality of user-selectable options, for message 5001d, including a plurality of reaction controls 594, optionally a play control 596, a highlight control 598, and / or a reply control 599. In some embodiments, reaction controls 594, when activated, cause the device to add a "reaction" to a selected message (e.g., message 5001d). In some embodiments, the added "reaction" is added to the message thread (e.g., conversation history) such that each participant in the message thread can see the "reaction." In some embodiments, reaction controls 594 include one or more controls for giving the message a heart (e.g., nice), giving the message a thumbs up (e.g., like), giving the message a thumbs down (e.g., dislike), giving the message an exclamation point (e.g., emphasis), giving the message a question mark (e.g., question), and giving the message an aha moment (e.g., laugh).
[0192] In some embodiments, following a determination that the selected message 5001d includes a representation of a media item (e.g., song A), device 100 optionally provides playback control 5045c (e.g., to initiate playback of the media item). In some embodiments, device 100 displays highlight control 598-1 that allows a user to mark (e.g., highlight) a representation of the selected media item (e.g., and / or message). For example, after a representation of a media item is highlighted, device 100 displays a highlight indication 598-2 (as described with reference to FIG. 134) to indicate that the user has highlighted the media item. In some embodiments, highlight indication 598-2 includes highlight control 598-1 having an altered visual characteristic (e.g., a filled star, a changed color, indicating content with a pin, etc.).
[0193] Figure 5E3 further illustrates detecting user input 597 on reply control 599. In response to detecting user input 597 on reply control 599, device 100 displays a user interface (e.g., within a messaging application) for replying to the selected message, as shown in Figure 5E4. For example, reply box 588 is displayed (e.g., simultaneously with a virtual keyboard) to allow the user to compose and send a reply message to the selected message 5001d.
[0194] FIG. 5E5 illustrates user input 586 (e.g., a tap input) selecting highlight option 598-1 displayed for the representation of shared song A. In some embodiments, in response to user input 586 selecting highlight control 598-1, device 100 updates highlight control 598-1 to mark (e.g., remember) shared song A as highlighted and to be displayed with a visually distinct appearance (e.g., displayed simultaneously with the representation of the shared media item). For example, prior to selection of highlight control 598-1, highlight control 598-1 includes an unfilled star. After the user selects highlight control 598-1, device 100 updates highlight control 598-1 to be displayed as a filled star (e.g., highlight display 598-2), as shown in FIG. 5E6. It will be appreciated that alternative methods not shown for visually distinguishing highlight control 598-1 may also be used (e.g., updating the color of the highlight option, changing the size of the highlight option, animating the highlight option, adding an overlay to the highlight option, etc.) One skilled in the art will appreciate that the highlight affordance may take any other suitable form or design to indicate two or more toggle states.
[0195] Upon being in the highlighted state, the representation of the content item (and the shared content item itself) is highlighted. In some embodiments, upon being highlighted, the content item is added to a database on the device that lists all highlighted content items. In some embodiments, after the shared song A is marked as being highlighted, the device 100 displays a representation of the highlight 598-2, which optionally at least partially overlays the message 5001d including the representation of the shared song A. For example, at any time thereafter, the user can open an application (e.g., a second application) that can play or view the content item (i.e., can play or view content items having the first content type, e.g., music, video, pictures), and a representation of the content item is displayed within the application. In some implementations, when a user highlights a particular content, the electronic device automatically marks the content to be highlighted in one or more corresponding applications. For example, if a song is highlighted, the electronic device marks the song as highlighted so that it is highlighted in any music application where highlighted content is enabled.
[0196] Figure 5E7 shows a user input 582 selecting an icon 5008a corresponding to a music application. In response to the user input 582, the device opens (e.g., launches, begins displaying) the music application, as shown in Figure 5E8.
[0197] FIG. 5E8 illustrates an exemplary user interface of a music application. In some embodiments, the user interface includes a first portion for displaying media items that are "highlighted" and a second portion for displaying media items that are "shared with you." For example, as described with reference to FIG. 5E5, in response to a user selecting highlight control 598-1, shared song A is marked (e.g., stored) as the highlighted media item. Thus, a representation of shared song A is displayed in the "highlighted" portion of the music application. In some embodiments, the representation of shared song A is optionally displayed with an indication of highlight 598-2 (e.g., a filled star).
[0198] In some embodiments, one or more media items are displayed in multiple sections of the music application. For example, song A is highlighted and categorized as being shared with a user of device 100. Thus, in some embodiments, a representation of song A is displayed in both a "Highlights" section of the music application's user interface and a "Shared with You" section of the music application's user interface. In some embodiments, pursuant to a determination that a media item is categorized by more than one section, device 100 selects one section in which to display a representation of the media item (e.g., to avoid duplicated display of the same media item in multiple sections of the user interface). In some embodiments, a representation of shared song A is optionally displayed with a display of highlight 598-2 in the "Shared with You" section (e.g., a highlighted shared item appearing in the "Shared with You" section optionally displays a display of highlight over the representation of the highlighted shared item).
[0199] In some embodiments, any content item (or representation of a content item) highlighted by a user includes a highlight indication 598-2 that is turned on (e.g., a highlight indication in a highlighted state). In some embodiments, a user can select the highlight indication and toggle it to a non-highlighted state (or a non-highlighted state). Here, when a representation of a content item is toggled off, it is removed from the "Highlights" section of the music application's user interface. Similarly, the highlight indication is removed or shown in a toggled off state (not highlighted) in the "Shared with You" section of the user interface.
[0200] Highlight affordances allow users to easily highlight content items that they want to easily access in other applications. For example, if a user receives a song that they like from a friend via a messaging application, the user can easily highlight the song in their messaging application, and the song will be listed at the top of their music application the next time the application is opened.
[0201] 5F1-5F2 illustrate example user interfaces for disambiguating according to some embodiments.
[0202] 5F1 illustrates receiving user input 570 (e.g., a tap input) on selectable capsule 5056c. As described above, selectable capsule 5056c includes a sharing display that is simultaneously displayed on media item representation 5054c, the sharing display including information about who shared the respective media item. In some embodiments, pursuant to a determination that multiple distinct users (e.g., and / or distinct groups) have shared the same media item, selectable capsule 5056c, when selected, allows a user of device 100 to select from a list of communication threads (e.g., within the same communication application (e.g., a messaging application) or from different communication applications (e.g., a thread in a messaging application and a thread in a mail application)).
[0203] For example, in response to detecting user input 570, device 100 displays disambiguation user interface 572 shown in FIG. 5F2. In some embodiments, user interface 572 displays a list of users (e.g., contacts), where each user in the list of users corresponds to a user who shared the selected media item (e.g., song C ("Song Name-C")). In some embodiments, each user in the list of users is displayed with a representation of the user (e.g., an avatar, contact photo, etc.) and an identifier (e.g., text identifier) of the user (e.g., "Alex"). In some embodiments, for each user in the list of users, an option 574 is provided to open a communication application (e.g., a messaging application). In some embodiments, option 574 to open a communication application is for the communication application in which the media item was shared. For example, pursuant to a determination that the media item was shared using a mail application, a mail application icon is displayed as an option to open the communication application. In some embodiments, in response to detecting user input selecting option 574, device 100 opens (e.g., in a messaging application) a message thread in which the selected media item (e.g., song C) was shared. In some embodiments, in response to detecting input selection option 574, device 100 opens an overlay user interface (e.g., a “quick reply” user interface) for sending a message to the individual user who shared the selected media item, the overlay user interface being displayed while maintaining the display of the media application (e.g., a music application) without switching to a messaging application.
[0204] In some embodiments, user interface 572 further includes option 575 for initiating a sharing session for each user in the list of users. For example, in response to detecting user input (e.g., a tap input) selecting option 575, device 100 opens a sharing session with the individual user indicated in the list of users (e.g., a sharing session with Alex). In some embodiments, the sharing session allows both the user of device C and the individual user in the list of users (e.g., Alex) to play a selected media item (e.g., song C) substantially simultaneously within the sharing session.
[0205] 5G1-5G4 show exemplary user interfaces for sharing media content received in a group message thread according to some embodiments.
[0206] FIG. 5G1A illustrates an example user interface for a messaging application that includes displaying multiple representations of a message thread, with each message thread corresponding to a different user (e.g., contact) or group of users (e.g., group message thread). In some embodiments, as shown in FIG. 5G1B, a user input 520 (e.g., a tap input) is detected on a portion of the user interface that corresponds to a group message (e.g., Costa Rica travel group).
[0207] In response to detecting user input 520, device 100 displays a user interface 522 including a message thread (e.g., a conversation history) for the selected group message, as shown in FIG. 5G2. In some embodiments, the selected group message includes representations of one or more shared media items (e.g., one or more media items shared in the group message), including representations of media items shared by the user of device 100 and media items shared by other members of the group who are not the user of device 100. In some embodiments, user interface 522 includes a user-selectable option 523 for viewing additional information related to the message thread. For example, device 100 detects user input 524 (e.g., a tap input) selecting user-selectable option 523.
[0208] In response to detecting user input 524, device 100 updates the display to an informational user interface 525. In some embodiments, informational user interface 525 includes one or more communication options 526, including an option 526a for initiating a voice call with members of the group, an option 526b for initiating a video call with members of the group, an option 526c for sending a message (e.g., email) to members of the group, and an option 526d for initiating a sharing session with members of the group. In some embodiments, user interface 525 further includes a toggle switch 527 that allows a user of device 100 to enable and / or disable whether media items shared in a selected group message (e.g., a trip to Costa Rica) use the "Shared with You" feature described herein. For example, toggle switch 527, when turned off, turns off "Hide Shared with You" (e.g., so that media items shared in a group message appear in a separate media application corresponding to the type of media item being shared). In response to turning on toggle switch 527, "Hide Shared with You" is turned on (e.g., so that media items shared in a group message do not appear in individual media applications corresponding to the type of shared media item). Thus, a user of device 100 is able to select whether to enable the "Shared with You" feature for each conversation in a messaging application.
[0209] In some embodiments, the information user interface 525 further includes a “highlight” portion of the display. In some embodiments, the “highlight” portion includes a representation of one or more media items shared in the group message (e.g., a representation of media item 529). In some embodiments, a representation of a media item shared by another user (e.g., not the user of device 100) in the group message is displayed with the share indicator 528. In some embodiments, the share indicator 528 includes a representation of the user who shared the media item (e.g., an avatar or contact photo corresponding to the user who shared the media item). In some embodiments, a representation of a media item shared by the user of device 100 is not displayed with a representation of the user who shared the media item (e.g., because it was shared by the user of device 100). In some embodiments, the representation of the one or more media items in the “highlight” portion includes only representations of media items highlighted by the user (e.g., in the group message) (e.g., as described above with reference to FIGS. 5E5-5E6), without including representations of media items not highlighted by the user. In some embodiments, the "highlighted" portion includes representations of one or more media items that have been highlighted by the user in addition to representations of one or more media items that have not been highlighted by the user. For example, device 100 determines one or more media items that are likely to be relevant to the user for inclusion in the "highlighted" portion (e.g., regardless of whether the user selected to highlight the media items).
[0210] FIG. 5G3 illustrates detecting a user input 530 (e.g., a swipe input) corresponding to a scroll request (e.g., an up swipe input to scroll the user interface down). In response to the user input 530, the device 100 scrolls the user interface 525 to display user interface 525b, as shown in FIG. 5G4. In some embodiments, the user interface 525b includes a "Photos" section 531, as shown in FIG. 5G4. In some embodiments, the "Photos" section 531 includes one or more photos that have been shared in a group message. In some embodiments, the photos that have been shared in the group message are optionally displayed with a share indicator (not shown) (e.g., such as the share indicator 528 described with reference to FIG. 5G3).
[0211] FIG. 5H illustrates an exemplary user interface 51000 that is displayed in response to a user request to search for media items. For example, in some embodiments, device 100 detects a user input (e.g., a swipe input) that causes device 100 to display a search user interface 51000. In some embodiments, search user interface 51000 includes a search box (e.g., in which a user can enter a search query using keywords). In some embodiments, prior to receiving a user input requesting a search (e.g., prior to receiving a search query), device 100 automatically displays a representation of one or more recommended media items. For example, device 100 determines one or more media items that are likely to be relevant to the user (e.g., based on media items that the user has highlighted (e.g., added as favorites), based on the user's search usage history, based on media items in the user's media library, etc.).
[0212] In some embodiments, search user interface 51000 includes a representation of a number of contacts (e.g., representation 51002). For example, device 100 displays a representation of a number of contacts marked as favorite contacts by a user. In some embodiments, the representation of each contact in the number of contacts includes a photo of the contact, an animated contact head, or a character (e.g., the first initial of the contact's name). For example, representation 51002 includes an animated contact head corresponding to a contact marked as a favorite by a user of device 100.
[0213] In some embodiments, the search user interface 51000 includes multiple portions, such as a "highlights" portion for displaying representations of one or more media items that have been "highlighted" (e.g., marked) by the user, and a "photos" portion for displaying one or more images (e.g., also displayed in a photo application).
[0214] In some embodiments, the search user interface 51000 includes displaying representations of one or more shared media items that are not stored in the user's media library (e.g., instead of or in addition to displaying representations of media items that are stored in the user's media library). For example, the device 100 includes a media library for audio items (e.g., songs, podcasts, etc.). In some embodiments, the song A image 51005 represents a song (e.g., "song A") that is a shared media item that has been shared with the device 100 via a communication application (e.g., as indicated by the shared representation 51006). In some embodiments, "song A" (e.g., corresponding to "song A image" 51005) is not saved in a media library of audio items on the device 100. In some embodiments, the "podcast A image" 51003 represents a podcast (e.g., "podcast A") that is stored in a media library of audio items. In some embodiments, the Song A image and Podcast A image are overlaid with "Song A Image" 51005 and "Podcast A Image" 51003 and are highlighted (e.g., flagged as a favorite, pinned, starred, marked, or otherwise tagged) as indicated by highlight indicators 51004 that appear in the "Highlight" portion of the search user interface 51000.
[0215] 5I1-5I10 show exemplary user interfaces for displaying representations of shared media items in different media applications based on the respective types of the respective shared media items.
[0216] For example, FIG. 5I1 illustrates device 100 detecting user input 540 (e.g., a tap input) selecting a news application icon 5008p. In response to detecting user input selecting news application icon 5008p, device 100 opens (e.g., launches, starts running, or otherwise displays a user interface therefor) the news application, as illustrated in FIG. 5I2. FIG. 5I2 illustrates an example user interface of a news application including a "Shared with You" section 542. In some embodiments, the "Shared with You" section 542 includes a list of one or more news articles that have been shared with the user of device 100 (e.g., via a communication application, such as a messaging application). For example, the "Shared with You" section 542 includes a representation of article A, including an image 543 representing article A, and other information (e.g., text information) about the article (e.g., title, author, summary, etc.). In some embodiments, the representation of article A further includes a sharing indication 544 that provides information about who shared the respective article. For example, Alex shared article A with the user of device 100. In some embodiments, the sharing indication 544 is selectable, and in response to selecting the sharing indication 544, the user is provided with an option to send a message to the user who shared the article and / or is provided with additional sharing information.
[0217] In some embodiments, in response to detecting user input on a representation of an article, device 100 displays (eg, opens) the selected article (eg, for viewing by the user).
[0218] FIG. 5I3 illustrates device 100 detecting user input 545 (e.g., tap input) selecting a book application icon 5008h. In response to detecting user input selecting book application icon 5008h, device 100 opens (e.g., launches, starts running, or otherwise displays a user interface therefor) a news application, as shown in FIG. 5I4. FIG. 5I4 illustrates an example user interface of the book application, including a "shared with you" section 546. In some embodiments, the "shared with you" section 546 includes a list of one or more books that have been shared with the user of device 100 (e.g., via a communication application, such as a messaging application). For example, the "shared with you" section 546 includes a representation of book title A, including an image representing book title A, and other information (e.g., text information) about the book (e.g., title, author, summary, etc.). In some embodiments, the representation of book title A further includes a sharing indication 547 that provides information about who shared the particular book. For example, Lucy shared book title A with the user of device 100. In some embodiments, the shared indication 547 is selectable, and in response to selecting the shared indication 547, the user is provided with an option to send a message to the user who shared the book (e.g., Lucy) and / or is provided with additional shared information.
[0219] In some embodiments, in response to detecting user input on a representation of a book, device 100 displays (e.g., opens) a preview of the selected book (e.g., for the user to view) and / or opens a user interface for purchasing the selected book.
[0220] FIG. 5I5 illustrates device 100 detecting user input 548 (e.g., tap input) selecting an application ("App") store application icon 5008o. In response to detecting user input selecting App store application icon 5008o, device 100 opens (e.g., launches, starts running, or otherwise displays a user interface therefor) the App store application, as shown in FIG. 5I6. FIG. 5I6 illustrates an example user interface of the App store application, including a "Shared with You" section 549. In some embodiments, the "Shared with You" section 549 includes a list of one or more applications that have been shared with the user of device 100 (e.g., via a communication application, such as a messaging application). For example, the "Shared with You" section 549 includes a representation of app A that includes an image representing app A and other information (e.g., text information) about the app (e.g., title, publisher, rating, etc.). In some embodiments, the representation of app A further includes a sharing indication 550 that provides information about who shared the respective app. For example, Joe shared app A with the user of device 100. In some embodiments, the share indication 550 is selectable, and in response to selecting the share indication 550, the user is provided with an option to send a message to the user who shared the app (e.g., Joe) and / or is provided with additional sharing information.
[0221] In some embodiments, in response to detecting user input on a representation of the app, device 100 displays (e.g., opens) a user interface for downloading the selected app and / or launches the respective app (e.g., if the app is already installed on device 100).
[0222] FIG. 5I7 illustrates device 100 detecting user input 551 (e.g., tap input) selecting podcast application icon 5008n. In response to detecting user input selecting podcast application icon 5008n, device 100 opens (e.g., launches, starts running, or otherwise displays a user interface therefor) the podcast application, as shown in FIG. 5I8. FIG. 5I8 illustrates an example user interface of the podcast application including a "Shared with You" section 552. In some embodiments, the "Shared with You" section 552 includes a list of one or more podcasts that have been shared with the user of device 100 (e.g., via a communication application such as a messaging application). For example, the "Shared with You" section 552 includes a representation of podcast A that includes an image representing podcast A and other information (e.g., text information) about the podcast (e.g., title, author name, episode number, etc.). In some embodiments, the representation of podcast A further includes a sharing indication 553 that provides information about who shared the particular podcast. For example, Joe shared podcast A with the user of device 100. In some embodiments, the share indication 553 is selectable, and in response to selecting the share indication 553, the user is provided with an option to send a message to the user who shared the podcast (e.g., Joe) and / or is provided with additional sharing information.
[0223] In some embodiments, in response to detecting user input on a representation of the podcast, device 100 displays (e.g., opens) a user interface for the podcast (e.g., with additional information about the podcast) and / or begins playing the podcast.
[0224] FIG. 5I9 illustrates device 100 detecting user input 554 (e.g., a tap input) that selects a television ("TV") application icon 5008e. In response to detecting user input that selects the television application icon 5008e, device 100 opens (e.g., launches, starts running, or otherwise displays a user interface therefor) the television application, as shown in FIG. 5I10. FIG. 5I10 illustrates an example user interface of the television application, including a "Shared with You" section 555. In some embodiments, the "Shared with You" section 555 includes a list of one or more television programs, movies, or other media (e.g., video) items (e.g., sporting events, etc.) that are shared with a user of device 100 (e.g., via a communication application such as a messaging application). For example, the "Shared with You" section 555 includes a representation of the television program that includes an image representing the television program, and other information (e.g., text information) related to the television program (e.g., title, names of actors, episode number, etc.). In some embodiments, the representation of the television program further includes a sharing display 556 that provides information about who has shared the particular television program. For example, Alex shared a television program with the user of device 100 (e.g., Alex also shared a movie and a sporting event). In some embodiments, the shared indication 556 is selectable, and in response to selecting the shared indication 556, the user is provided with an option to send a message to the user (e.g., Alex) who shared the television program and / or is provided with additional shared information.
[0225] In some embodiments, in response to detecting user input on a representation of a television program, device 100 displays (e.g., opens) a user interface for the television program (e.g., with additional information about the television program) and / or begins playing the television program.
[0226] 6A-6D illustrate exemplary user interfaces for initializing the share feature. In some embodiments, the exemplary user interfaces illustrated in FIGS. 6A-6D are displayed automatically (e.g., without user input) following a determination that the user has not turned on the share feature (e.g., in Settings). In some embodiments, the exemplary user interfaces illustrated in FIGS. 6A-6D are displayed by device 100 following a determination that device 100 has been enabled to use the feature (e.g., the first time the device is enabled to use the share feature). For example, FIGS. 6A-6D provide an introductory user interface to guide a user through the various capabilities and functions available for sharing media items.
[0227] FIG. 6A illustrates a “Share with You” user interface 6000. In some embodiments, the “Share with You” user interface 6000 includes text information 6002 that provides information about how the shared media items are displayed in various applications. For example, in some embodiments, the shared media items received by the device 100 within one or more communication applications (e.g., messaging application, email application, etc.) are automatically displayed in one or more media applications (e.g., separate from the one or more communication applications) without requiring any usage input. For example, the text information 6002 provides an overview of how the device 100 processes the shared media items. In some embodiments, the type of shared media items determines in which media application(s) the individual media items are displayed. For example, shared photos and / or videos are displayed in a photo application, shared songs are displayed in a music application, shared television programs and / or movies are displayed in a television application, etc.
[0228] In some embodiments, representations of one or more media applications enabling integration of shared media items are displayed on the "Shared with You" user interface 6000. For example, application icons for each media application are displayed, such as a photo application 6004a, an application store 6004b, a news application 6004c, a books application 6004d, a television application 6004e, an internet browser application 6004f, and a music application 6004g. It will be understood that the example media applications shown in FIG. 6A are not an exhaustive list. For example, the media applications enabling integration of shared media items may include additional media applications, or a subset of but not all of the media applications shown in FIG. 6A.
[0229] In some embodiments, the "Share with You" user interface 6000 includes a navigation bar 6006 that is updated based on the currently displayed user interface. For example, each dot represents another user interface in a sequence of user interfaces (e.g., an onboarding sequence of user interfaces). For example, in FIG. 6A, the leftmost dot (of the three dots) is filled in to indicate that the currently displayed user interface is the first user interface in the sequence of user interfaces. In some embodiments, a swipe input (e.g., to the left and / or to the right) detected on the device 100 causes the device 100 to navigate between user interfaces in the sequence of user interfaces. For example, a swipe to the left causes the device 100 to switch the display of the user interface 6000 (shown in FIG. 6A) to the user interface 6012 (shown in FIG. 6B).
[0230] In some embodiments, the "Share with You" user interface 6000 includes a button 6008 (e.g., "OK") that, when selected, causes the device to display the next user interface in a sequence of user interfaces (e.g., replacing the display of user interface 6000 of FIG. 6A with the display of user interface 6012 of FIG. 6B). In some embodiments, selection of button 6008 causes device 100 to exit the sequence of user interfaces (e.g., return to a home screen, such as interface 400 shown in FIG. 4A).
[0231] In some embodiments, the "Shared with You" user interface 6000 includes user-selectable options 6010 (e.g., "Edit Settings") that allow a user to update the capabilities of the shared media item for different applications. In some embodiments, in response to device 100 detecting (e.g., user input selection) a user selection of "Edit in Settings" option 6010, device 100 opens a settings user interface, as described in more detail with reference to Figures 7A-7D.
[0232] In some embodiments, in response to detecting a user input (e.g., a left swipe input) to navigate to the next user interface in a sequence of user interfaces, the device 100 displays a "Share with You in Photos" user interface 6012. In some embodiments, the "Share with You in Photos" user interface 6012 provides textual information 6014 regarding how the shared media item (e.g., the shared photo and / or the shared video) is integrated with a media application (e.g., a photo application). In some embodiments, the "Share with You in Photos" user interface 6012 includes one or more instances of the shared media item (e.g., and a share indicator displayed with the shared media item). For example, the shared media item 6016a includes a share indicator 6018a that indicates information about how the media item was shared (e.g., "From Lucy") and the shared media item 6016b includes a share indicator 6018b. In some embodiments, the share indicators 6018a and 6018b include a representation of the user who shared the media item (e.g., a saved contact photo, an emoticon representing the user, etc.).
[0233] In some embodiments, the "Share with You in Photos" user interface 6012 includes a navigation bar 6006 that is updated based on the currently displayed user interface in a sequence of user interfaces. For example, in FIG. 6B, the center dot (of three dots) is filled in to indicate that the currently displayed user interface 6012 is the center user interface in the sequence of user interfaces (e.g., one user interface in the sequence (e.g., user interface 6000 of FIG. 6A) is before the current user interface and one user interface (e.g., user interface 6020 of FIG. 6C) is after the current user interface). In some embodiments, a swipe input (e.g., to the left and / or right) detected on device 100 causes device 100 to navigate between user interfaces in the sequence of user interfaces. For example, when a right swipe input is detected, device 100 replaces the display of user interface 6012 (shown in FIG. 6B) with user interface 6000 (shown in FIG. 6A), and when a left swipe input is detected, device 100 replaces the display of user interface 6012 (shown in FIG. 6B) with user interface 6020 (shown in FIG. 6C).
[0234] In some embodiments, the user interface 6012 also includes a button 6008 and an "Edit Settings" option 6010, as described above with reference to FIG. 6A.
[0235] It will be appreciated that additional user interfaces for specific applications may be included in the sequence of user interfaces. For example, the "Share with You in Photos" user interface 6012 shown in FIG. 6B is an example of an informational user interface for a first media application (e.g., a photo application). In some embodiments, an informational user interface is displayed for a different media application (e.g., news, web browser, music, etc.) instead of (e.g., or in addition to) user interface 6012.
[0236] In response to detecting a user input to navigate to the next user interface in a sequence of user interfaces (e.g., a detected left swipe input), device 100 displays a “highlight” user interface 6020. In some embodiments, the “highlight” user interface 6020 provides text information 6022 that describes features that allow a user to mark (e.g., star, pin, highlight, or otherwise flag) a particular media item. In some embodiments, the marked media item is displayed simultaneously with an indicator 6024 that indicates that the media item is a marked media item. In some embodiments, device 100 displays one or more marked media items in a dedicated portion of the user interface (e.g., to facilitate a user viewing the marked media items). For example, a portion of a user interface of a separate media application includes a section for displaying marked media items.
[0237] In some embodiments, the "highlight" user interface 6020 also includes a navigation bar 6006, a button 6008, and an "Edit Settings" option 6010, as described above with reference to Figures 6A-6B.
[0238] 6D illustrates an exemplary user interface for providing information about shared media item integration on device 6026. In some embodiments, device 6026 comprises a computer system communicatively coupled to a display 6028 (e.g., a television display). In some embodiments, device 6026 and display 6028 comprise the same device (e.g., device 6026 includes display 6028). In some embodiments, device 6026 is an example of portable multifunction device 100. For example, device 6026 includes multiple applications including a television application (e.g., corresponding to application icon 6004e shown in FIG. 6A). In some embodiments, the television application is capable of displaying (e.g., streaming and presenting) television programs and / or movies on display 6028.
[0239] In some embodiments, device 100 displays a "Shared with You" user interface 6030. In some embodiments, the "Shared with You" user interface 6030 includes text information 6032 that provides information about how the shared media item will be displayed in an application (e.g., in a television application) on device 6026. For example, a shared media item (e.g., a television program and / or movie) received by device 100 within one or more communication applications (e.g., a messaging application, an email application, etc.) is automatically displayed in one or more media applications (e.g., separate from the one or more communication applications) without requiring any usage input. For example, text information 6032 provides an overview of how device 100 will process the shared media item.
[0240] In some embodiments, the "Shared with You" user interface 6030 includes a button 6034 that allows a user to enable the shared media integration functionality on the device 6026 (e.g., and / or display 6028) and an option 6036 that allows a user to opt out of enabling the shared media integration functionality on the device 6026. For example, in response to a user selecting the button 6034, the device 6030 is enabled to synchronize the shared content (e.g., received via a communications application) that is displayed within a media application (e.g., a television application). In some embodiments, the user can (e.g., later) update the selection to enable disabling the shared media integration functionality within the settings interface, as described with reference to FIGS. 7A-7D.
[0241] 7A-7D show example user interfaces for enabling and / or disabling shared media integration functionality for multiple applications. Figure 7A shows example user interface 7002. In some embodiments, a user can navigate to user interface 7002 (e.g., through a series of user inputs) using a settings application (e.g., by selecting icon 446 shown in Figure 4A).
[0242] In some embodiments, a user selects an application for enabling and / or disabling a highlighting feature (e.g., as described with reference to FIGS. 5E5-5E8). For example, two or more applications enable a shared media integration feature (e.g., based on the controls described with reference to FIGS. 7A-7D), and a first application of the two or more applications enables highlighted content to be displayed in the first application, but a second application of the two or more applications does not enable highlighted content to be displayed in the second application (e.g., there is no "highlight" section in the second application, and / or the content item is not displayed with a highlighting display (e.g., as described with reference to FIG. 5E8)). For example, a user interface (e.g., accessible using a Settings application) is provided that allows a user to enable and / or disable the highlighting feature of each application (e.g., using a toggle switch provided for each application in the list of applications, such as the toggle switches described with reference to FIGS. 7A-7D). 7A illustrates multiple applications including one or more media applications (e.g., applications 7006a-7006l) and one or more communication applications (e.g., a social media application 7008a and a messaging application 7008b). In some embodiments, the one or more media applications are displayed in a different portion of the user interface than the one or more communication applications (e.g., the communication applications are grouped in one section and the media applications are grouped in a different section). In some embodiments, the one or more media applications and the one or more communication applications are not displayed in separate portions of the user interface 7002 (e.g., both types of applications are displayed in the same section as shown in FIG. 7A).One or more of the media applications 7006a-7006l shown in FIG. 7A are examples of media applications, and it will be appreciated that additional or alternative media applications may be displayed in the user interface 7002.
[0243] In some embodiments, the user interface 7002 includes a toggle switch 7004 for controlling whether the shared media integration feature is enabled or disabled for all of the applications (e.g., applications 7006a-7006l and 7008a-7008b) displayed on the user interface 7002. For example, when the toggle switch 7004 is enabled, one or more of the applications can use the shared media integration feature (e.g., based on the current settings of the toggle switches 7010a-7010n). In some embodiments, a toggle switch 7010a-7010n is provided for each application. For example, each toggle switch 7010 can be turned on or off to enable or disable the shared media integration feature of the individual application. In some embodiments, as described in more detail below with respect to FIG. 7C, in response to the toggle switch 7004 being disabled (e.g., set to off), none of the applications use the shared media integration feature (e.g., also referred to herein as a “shared with you” feature). For example, in response to setting toggle switch 7004 to "off," all of toggle switches 7010a-7010n are also set to "off" (eg, the "Share with You" feature is disabled for all applications).
[0244] In some embodiments, as shown in Figure 7A, device 100 automatically (e.g., by default) enables the "Share with You" feature (e.g., toggle switch 7004 is set to on). In some embodiments, device 100 automatically enables the "Share with You" feature for all applications in the list shown in Figure 7A.
[0245] FIG. 7B shows an example user interface for a user of device 100 requesting to disable the “Share with You” feature for a first set of applications (e.g., without disabling the “Share with You” feature for all applications shown in the list of FIG. 7A). For example, FIG. 7B illustrates that toggle switch 7010a (corresponding to photo application 7006a), toggle switch 7010e (e.g., corresponding to television application 7006e), toggle switch 7010h (e.g., corresponding to movies application 7006h), and toggle switch 7010j (e.g., corresponding to social media application 7008a) are disabled (e.g., as shown by each toggle switch not being covered), while toggle switch 7010b (e.g., corresponding to music application 1 7006b), toggle switch 7010c (e.g., corresponding to Safari (e.g., web browser) application 7006c), toggle switch 7010d (e.g., news application 7006d), toggle switch 7010f (e.g., corresponding to Home application 7006f), toggle switch 7010g (e.g., corresponding to App Store application 7006g), toggle switch 7010i (e.g., corresponding to music application 2 7006i) are disabled (e.g., as shown by each toggle switch not being covered). 7006i), toggle switch 7010k (e.g., corresponding to podcast application 7006j), toggle switch 7010l (e.g., corresponding to messaging application 7008b), toggle switch 7010m (e.g., corresponding to maps application 7006k), and toggle switch 7010n (e.g., corresponding to iTunes Store application 7006l) are shown to be enabled (e.g., as indicated by the blocked toggle switches). Thus, a user can select which applications to enable the “Share with You” feature for and which applications to not enable the “Share with You” feature for.
[0246] For example, by disabling the "Share with You" feature of the social media application 7008a while continuing to enable the "Share with You" feature of the messaging application 7008b, the device 100 will synchronize media items shared via the messaging application 7008b with the individual media applications for the individual media items, and will not synchronize media items shared via the social media application 7008a. Similarly, shared media items will not be synchronized in media applications in which the "Share with You" feature is disabled (e.g., the toggle switch is set to off). For example, shared photos and / or videos (e.g., shared via the messaging application 7008b) will not be displayed in the photo application 7006a because the toggle switch 7010a is set to off. Thus, in some embodiments, only shared media items that are shared via a communication application enabled to use the "Share with You" feature and that are shared media items for display in a media application enabled to use the "Share with You" feature will be displayed to the user in the individual media application (e.g., the shared media items must meet both criteria). For example, if a shared media item is shared via a communication that is not enabled to use the "Shared with You" feature, or if the shared media item is a type of media item that is displayed in a media application that is not enabled to use the "Shared with You" feature, the shared media item will not be displayed to the user in the respective media application.
[0247] 7C illustrates an exemplary user interface in which toggle switch 7004 is set to off and the "Share with You" feature is disabled for all applications in the list of applications displayed in FIG. 7C. In some embodiments, device 100 automatically (e.g., without user input) sets toggle switch 7004 to off (e.g., a user of device 100 can select which applications, if any, are enabled to use the "Share with You" feature). For example, when toggle switch 7004 is set to off, all of toggle switches 7010a-7010n are also set to off (e.g., because the "Share with You" feature is disabled across all applications).
[0248] 7D illustrates an exemplary user interface that is displayed pursuant to a user enabling the "Share with You" feature for one or more applications. In some embodiments, the user selects one or more applications for which to enable the "Share with You" feature (e.g., without selecting one or more other applications for which the "Share with You" feature remains disabled). In some embodiments, the user must select at least one communication application (e.g., in which media items are being shared) and at least one media application (e.g., in which individual media items (based on the type of media item) are displayed).
[0249] In some embodiments, in response to a user selecting one or more applications for which to enable the “Share with You” feature (e.g., by switching a selected toggle switch from toggle switches 7010a-7010n), toggle switch 7004 is automatically (e.g., without user input) switched from “OFF” to “ON.” For example, in response to a user selecting to enable the “Share with You” feature for an application, the “Share with You” feature (as represented by toggle switch 7004) is also enabled.
[0250] 8A-8D are flow diagrams illustrating a method 800 for automatically making shared content available to one or more receiving applications in a corresponding media application based on the type of content. Method 800 is performed in a computer system (e.g., device 300 of FIG. 3 or portable multifunction device 100 of FIG. 1A) in communication with (e.g., or including) a display generation component (e.g., an optionally touch-sensitive display device, projector, head-mounted display, head-up display, etc.) and one or more input devices (e.g., including one or more sensors for detecting intensity of contact with a touch-sensitive surface). In some embodiments, the display generation component is a touch screen display, and the touch-sensitive surface is on or integrated into the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 800 are optionally combined and / or the order of some operations is optionally changed.
[0251] As described herein, the method 800 automatically makes the content shared in the receiving application available in associated applications that can open the shared content (e.g., applications in which the content is normally provided, viewed, played, or listened to). Automatically making the shared content available in associated applications improves the discoverability of the shared content without requiring additional user input and reduces the number of inputs required to perform an action. Additionally, the method 800 aggregates shared content of the same content type in a separate application section dedicated to the shared content, reducing the number of inputs and cognitive burden for a user attempting to view or interact with the content. Reducing the number of inputs required to interact with a shared content item enhances device usability and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0252] The computer system receives (802) information identifying a first shared content item (e.g., a media content item such as music, photos, videos, books, articles or news, podcasts, television programs, or map locations, web links, etc.) via a first messaging conversation in a first receiving application of a plurality of applications (e.g., a first messaging application (e.g., represented by icon 5008d), a mail application (e.g., represented by icon 5008r), or a social media application). In some embodiments, the information identifying the first shared content item is a representation of the content item, a link to the content item, a preview of the content item that links to the content item, or a pointer or identifier of the content item readable by the corresponding host application. In some embodiments, instead of identifying information or a link, a copy of the content item is shared.
[0253] In response to receiving (804) information identifying the first shared content item, and following a determination (806) that the first shared content item is of a first type, the computer system automatically makes the first shared content item available (e.g., without additional user input) in a first application of the plurality of applications, the first application being associated with the first type of content. For example, after the information identifying the content item is received at the receiving application, when a user opens the first application (e.g., by contact 5012 shown in FIG. 5A), the item, a copy of the item, or a representation of the item (e.g., representation 5045a shown in FIG. 5A6) automatically appears in a dedicated area (section 5054 shown in FIG. 5A6) in the first application without the user having to take any action. In some embodiments, a first application (e.g., a music application represented by icon 5008a) is designated as a default to handle a first type of content (e.g., music), and the first application handles the first type of content, such as a music application handling music media content, a web browser handling web links, a podcast application handling podcasts, a book application opening and displaying digital books, etc.
[0254] In response to receiving information identifying the first shared content item, and in accordance with determining (808) that the first shared content item is of a second type, the computer system automatically makes the first shared content item available in a second application of the plurality of applications, the second application being associated with the second type of content. In some embodiments, the second type is different from the first type (810). In some embodiments, the first application is not associated with the second type of content, and the second application is not associated with the first type of content (e.g., is not able to open, play, or display the content). In some embodiments, the first receiving application is a messaging application (811). For example, content received at the receiving application (e.g., a messaging application) (e.g., recommendations received from contacts for movies, books, songs, videos, photos, podcasts, articles, places to visit, etc.) is published or provided to various applications in which the user typically consumes (e.g., watches or listens to) such content. In some embodiments, the content item is stored within the messaging application but not within the first or second application (e.g., the first and second applications reference the messaging application to display the shared media item).
[0255] Making different types of content shared at a receiving application automatically available within different applications that can open the individual content types (e.g., applications in which that type of content is normally provided, viewed, played, or listened to) improves the discoverability of the shared content without requiring additional user input and reduces the number of inputs required to perform actions. Reducing the number of inputs required to interact with a shared content item enhances device usability and makes the user-device interface more efficient (e.g., by helping the user provide appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0256] In some embodiments, the computer system receives (812) information identifying the second shared content item by a second receiving application of the plurality of applications (e.g., an instant messaging application, an email application, or a social media application), the second receiving application being different from the first receiving application. In some embodiments, in response to receiving the information identifying the second shared content item and in accordance with a determination that the second shared content item is of a first type (e.g., music content), the computer system automatically makes the second shared content item available in the first application of the plurality of applications (e.g., representation 5045b of song B (also referred to as “song title-B”) shown in FIG. 5A6). In some embodiments, in response to receiving the information identifying the second shared content item and in accordance with a determination that the second shared content item is of a second type (e.g., a book), the computer system automatically makes the second shared content item available in the second application of the plurality of applications (e.g., representation 546a in section 546 shown in FIG. 5I4).
[0257] Making content shared in different receiving applications automatically available within different applications that can open the individual content types (e.g., applications in which that type of content is typically provided, viewed, played, or listened to) improves the discoverability of the shared content without requiring additional user input and reduces the number of inputs required to perform an action. Additionally, method 800 aggregates content of the same type shared in different receiving applications into sections of the respective applications dedicated to the shared content, reducing the number of inputs and cognitive burden for a user attempting to view or interact with the content. Reducing the number of inputs required to interact with a shared content item enhances device usability and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0258] In some embodiments, the information identifying the first shared content item is received at a first location of the first receiving application, and the computer system receives information identifying the third shared content item at a second location of the first receiving application (814). In response to receiving the information identifying the third shared content item and in accordance with a determination that the third shared content item is of a first type, the computer system automatically makes the third shared content item available in a first application of the plurality of applications. In response to receiving the information identifying the third shared content item and in accordance with a determination that the third shared content item is of a second type, the computer system automatically makes the third shared content item available in a second application of the plurality of applications. For example, a second type of content (e.g., podcast name A) is shared in a messaging conversation with Alex (e.g., the shared podcast is a different content type than the songs and news articles shared in the messaging conversation), as shown in FIG. 5A4.
[0259] Making content shared in different messaging conversations automatically available within various applications that can open the individual content types (e.g., applications in which that type of content is typically provided, viewed, played, or listened to) improves the discoverability of the shared content without requiring additional user input and reduces the number of inputs required to perform actions. Additionally, shared content of the same type can be aggregated into specific sections of individual applications to reduce the number of inputs and cognitive burden for a user attempting to view or interact with the content. Reducing the number of inputs required to interact with shared content items enhances device usability and makes the user-device interface more efficient (e.g., by helping users make appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing users to use the device more quickly and efficiently.
[0260] In some embodiments, the first shared content item is of a first type (816), and the computer system receives user input to add the first shared content item to a library of the first application (e.g., adding a song to an Apple Music library or another music application library, bookmarking a web link in Safari or another browser, adding a video to an Apple TV library or another video / TV library). In some embodiments, in response to receiving the user input to add the first shared content item to the library of the first application, the computer system adds the first shared content item to the library of the first application (e.g., saving or storing the shared content in a library associated with a user of an electronic device that may be stored in the cloud or accessible from multiple electronic devices). In some embodiments, the first shared content item is not automatically added to the library of the first application in response to receiving information identifying the first shared content item (818).
[0261] Automatically making different types of shared content available to a receiving application in associated applications that can open individual content types without automatically adding the shared content to the associated application's content library improves the discoverability of the shared content and provides the user with control over the sharing process, thus reducing the number of inputs required to perform an action. Reducing the number of inputs required to interact with a shared content item enhances device usability and makes the user-device interface more efficient (e.g., by helping the user provide appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0262] In some embodiments, in response to receiving information identifying the first shared content item and in accordance with a determination that the first shared content item is of a second type (e.g., a photo or a video), the computer system automatically adds (820) the first shared content item to a library in a second application of the plurality of applications. For example, a copy of the content item is not only automatically made available in the second application, but is also stored (e.g., added) to the library of the second application. In some embodiments, the copy of the content item is retained in the library unless the user takes an action to remove it (e.g., by using the control 5090d shown in FIG. 5D4). For example, the copy of the content item stored in the library is not dynamically updated by the computer system. In some embodiments, the second type of content item is not available in any of the plurality of applications unless it is user-generated and shared in the receiving application, or manually added to the library of each of the plurality of applications, or generated and stored by the user of the electronic device.
[0263] Automatically making different types of shared content available to a receiving application in associated applications that can open individual content types while automatically adding the shared content to the associated application's content library improves the discoverability of the shared content and reduces the number of inputs required to perform actions. Reducing the number of inputs required to interact with the shared content enhances device usability and makes the user-device interface more efficient (e.g., by helping the user provide appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0264] In some embodiments, the computer system aggregates (e.g., groups or puts into a collection) (822) the plurality of information identifying each shared content item of a first type for display in a first application. In some embodiments, the computer system aggregates (e.g., groups or puts into a collection) the plurality of information identifying each shared content item of a second type for display in a second application. For example, shared content items of one type are grouped into one collection and content items of another type are grouped into another collection. In some embodiments, the plurality of information identifying each shared content item includes information shared from different users, information shared at different times and / or in different conversations.
[0265] Automatically marking different types of content for sharing and / or automatically grouping shared content of the same type for display in sections of the respective applications dedicated to shared content improves the discoverability of the shared content and reduces the number of inputs and cognitive burden on the user attempting to view or interact with the shared content. Reducing the number of inputs required to interact with the shared content enhances usability of the device and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0266] In some embodiments, the computer system displays (824) a plurality of information identifying each shared content item of a first type in a dedicated section of the first application (e.g., section 5054 “Shared with You” shown in FIG. 5A6) and a plurality of information identifying each shared content item of a second type in a dedicated section of the second application (e.g., section 546 “Shared with You” shown in FIG. 5I4). For example, the first application includes a section that displays the first type of content items shared in the receiving application, and the second application includes a section that displays the second type of content items shared in the receiving application. Thus, content items of the same type are grouped for display in the “Shared with You” sections of the respective applications. In some embodiments, not all content items of the same type identified as being shared are grouped for display, e.g., only a subset of the shared content items are displayed at any one time (e.g., only the most relevant content items are displayed, where relevance may be determined based on various criteria).
[0267] Automatically displaying shared content of the same type in sections of the respective applications dedicated to the shared content improves the discoverability of the shared content and reduces the number of inputs and cognitive burden on the user to view or interact with the shared content. Reducing the number of inputs required to interact with the shared content enhances usability of the device and makes the user-device interface more efficient (e.g., by helping the user provide appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing the device's power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0268] In some embodiments, the computer system receives (826) information identifying a first plurality of shared content items in a first receiving application (e.g., a messaging application), the first plurality of shared content items being of a first type. After receiving the information identifying the first plurality of shared content items, the computer system receives a request to open the first application via one or more input devices (e.g., a user may tap an icon representing the first application). In response to receiving the request to open the first application, the computer system simultaneously displays the information identifying the first plurality of shared content items in a dedicated section of the first application (section 5054 of FIG. 5A6) and a second plurality of content items of the first type in a portion of the first application other than the dedicated section (e.g., recently played music section 5056 of FIG. 5A6). For example, when a user of an electronic device opens a first application, a default user interface (e.g., default view 5052 in FIG. 5A6) is displayed that includes content items that have been added, saved, played, or favorited by the user in one section, and content items that have been recommended to the user or shared with the user via a messaging application in another separate section (e.g., section 5054).
[0269] Displaying shared content (in a dedicated section) and non-shared content (in other sections) simultaneously in their respective applications improves the discoverability of the shared and non-shared content and reduces the number of inputs and cognitive burden for a user attempting to view or interact with the shared content. Reducing the number of inputs required to interact with the shared and non-shared content enhances usability of the device, makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces device power usage and improves battery life by allowing the user to use the device more quickly and efficiently.
[0270] In some embodiments, the first plurality of shared content items are of a first type (828), and pursuant to a determination that a predetermined criterion is met for a content item in the first plurality of shared content items, the computer system removes information identifying the content item from display in the dedicated section of the first application. For example, the content items included in the first group for display are dynamically updated based on, but not limited to, one or more of the following criteria: when the information identifying the content was received, whether the shared content was consumed after the information identifying the content was received, whether the shared content was manually highlighted or otherwise marked as more important than other unmarked content, whether the information identifying the content was received in a messaging conversation marked as more important than other unmarked messaging conversations, whether the information identifying the content was sent by a particular contact, such as a contact marked as more important or a contact with which the user of the electronic device frequently connects.
[0271] Removing content from a group of content items intended for display in a section dedicated to shared content based on various predetermined criteria improves the relevance of the displayed content and reduces the number of inputs required to discover related shared content. Reducing the number of inputs required to perform actions enhances usability of the device and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing power usage and improving battery life of the device by allowing the user to use the device more quickly and efficiently.
[0272] In some embodiments, the predetermined criteria is a time-based criteria (830), and pursuant to a determination that a predetermined amount of time (e.g., 30 days) has elapsed since the content item was shared, the computer system removes information identifying the content item from display within the dedicated section of the first application.
[0273] Decaying shared content included in a group within a predetermined amount of time improves the relevance of displayed content and reduces the number of inputs required to discover related shared content. Reducing the number of inputs required to perform actions enhances usability of the device, makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), and also reduces power usage and improves battery life of the device by allowing the user to use the device more quickly and efficiently.
[0274] In some embodiments, the dedicated section of the first application and the dedicated section of the second application are visually similar (832). In some embodiments, the dedicated section of the first application and the dedicated section of the second application are associated with the same attribute (e.g., the same tab, label, or name associated with the dedicated section) that indicates that the content displayed in the respective dedicated section is shared. For example, the attribute is a text label such as "Shared with You" or "From Your Friends". The attribute is also the same color and size in both the first application and the second application. For example, section 5054 (shown in FIG. 5A6), section 542 (shown in FIG. 5I2), section 546 (shown in FIG. 5I4), section 549 (shown in FIG. 5I6), section 552 (shown in FIG. 5I8), and section 555 of the Music application are visually similar and are all labeled "Shared with You" in the News application.
[0275] Having dedicated sections in different applications for visually similar shared content improves discoverability of the shared content across different applications and provides visual feedback to the user that the content in each of the dedicated sections is shared content even though the different applications are not visually consistent or similar. Providing improved visual feedback to the user improves usability of the device, increases the efficiency of the user-device interface (e.g., by helping the user provide appropriate inputs when operating / interacting with the device, reducing user errors), and further reduces device power consumption and improves battery life by allowing the user to use the device more quickly and efficiently.
[0276] In some embodiments, the first shared content item is of a first type (834), and making the first shared content item automatically (e.g., without additional user input) available in the first application includes providing a mechanism in the first application (e.g., capsule 5056a shown in FIG. 5A6) for navigating to a location in the first receiving application where information identifying the first shared content item was originally received (e.g., as described in connection with FIGS. 5A7, 5A8, and 5B3 above). For example, making the shared content available in the corresponding application allows a user to open the content from the corresponding application (e.g., by selecting representation 5054a) and also to browse to the location in the receiving application where the content item was originally shared (e.g., by selecting capsule 5056a shown in FIG. 5A6).
[0277] Providing a mechanism within a media application displaying the shared content to navigate to the location within the receiving application where the shared content was originally shared improves the discoverability of the shared content and reduces the number of inputs required to discover shared and relevant content, while improving communication with the contacts who shared the content. Reducing the number of inputs required to perform actions enhances the usability of the device and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing the device's power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0278] In some embodiments, providing a mechanism in the first application for navigating to a location in the first receiving application where information identifying the first shared content item was originally received includes the computer system auto-scrolling (836) to the location (e.g., a message) in the first receiving application where the first shared content item was originally received (e.g., a first messaging conversation in the first messaging application). In some embodiments, the receiving application is a messaging application with a messaging conversation, where the messaging conversation includes multiple messages (e.g., the computer system displays message 5001d last, as described in FIG. 5A8 above). For example, making the shared content available in the corresponding application allows a user to open the content from the corresponding application and also to see the message in the messaging application where the content item was originally shared.
[0279] Providing a mechanism within a media application displaying the shared content to navigate directly to the message within the messaging conversation in which the shared content was originally shared improves the discoverability of the shared content and reduces the number of inputs required to discover related shared content, while improving communication with the contact who shared the content. Reducing the number of inputs required to perform actions enhances usability of the device and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0280] In some embodiments, the request to share the first shared content item is initiated (838) from a remote messaging application on the remote electronic device.
[0281] In some embodiments, a plurality of contacts are stored in a contacts application of the plurality of applications (840), and prior to automatically making the first shared content item available within the first application or the second application, the computer system determines that information identifying the first shared content item has been received from one or more of the plurality of contacts.
[0282] Determining whether the shared content was shared by a contact (as opposed to a non-contact user) before automatically making the shared content available in an associated application improves the relevance of the shared content displayed in the associated application and reduces the number of inputs required to perform an action. Reducing the number of inputs required to interact with the shared content enhances usability of the device and makes the user-device interface more efficient (e.g., by helping the user provide appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing the device's power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0283] In some embodiments, prior to automatically making the first shared content item available within the first application or the second application, the computer system determines (842) that information identifying the first shared content item as shared content has been received from one or more contacts of a plurality of contacts that meet a communication criteria (e.g., recently communicated contacts, regularly communicated contacts, a favorites list, a VIP list of contacts, recently added friends, etc.).
[0284] Determining whether the shared content was shared by a contact that meets certain communication criteria (rather than any contact or any user) before automatically making the shared content available in associated applications improves the relevance of the shared content displayed in associated applications and reduces the number of inputs required to perform an action. Reducing the number of inputs required to interact with the shared content enhances usability of the device and makes the user-device interface more efficient (e.g., by helping the user provide appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing the device's power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0285] In some embodiments, prior to automatically making the first shared content item available within the first application or the second application, the computer system determines that information identifying the first shared content item has been received from one or more contacts of the plurality of contacts that meet a threshold level of communication (e.g., recently communicated with the contact, periodically communicated with the contact) (844). In some embodiments, the threshold level of communication may be predetermined or may change dynamically, for example, based on behavior of a user of the computer system.
[0286] Determining whether the shared content was shared by a contact that meets a threshold level of communication (rather than any contact or any user) before automatically making the shared content available in associated applications improves the relevance of the shared content displayed in associated applications and reduces the number of inputs required to perform an action. Reducing the number of inputs required to interact with the shared content enhances usability of the device and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0287] In some embodiments, the plurality of contacts are stored in a contacts application of the plurality of applications (846), and prior to automatically making the first shared content item available within the first application or the second application, the computer system determines that information identifying the first shared content item has been received via a group conversation that meets a threshold level of communication, and two or more of the plurality of contacts are participants in the group conversation.
[0288] Determining whether the shared content was shared in a group conversation that meets a threshold level of communication (rather than in any group conversation) before automatically making the shared content available to associated applications improves the relevance of the shared content displayed in associated applications and reduces the number of inputs required to perform an action. Reducing the number of inputs required to interact with the shared content enhances usability of the device and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0289] 9A-9F are flow diagrams illustrating a method 900 for automatically displaying shared content in a media application based on whether a sharing feature is enabled, according to some embodiments. Method 900 is performed in a computer system (e.g., device 300 of FIG. 3 or portable multifunction device 100 of FIG. 1A) in communication with (e.g., including) a display generating component (e.g., an optionally touch-sensitive display device, projector, head-mounted display, head-up display, etc.) and one or more input devices (e.g., including one or more sensors for detecting intensity of contact with a touch-sensitive surface). In some embodiments, the display generating component is a touch screen display, and the touch-sensitive surface is on or integrated into the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 900 are optionally combined and / or the order of some operations is optionally changed.
[0290] As described herein, the method 900 determines when an individual content item has been identified and / or shared with a user using a receiving application and automatically displays the individual content item in the corresponding application without requiring the user to provide input to select or add the item in the corresponding application. The method automatically displays the individual item if the user of the electronic device has authorized this functionality (e.g., the sharing settings of the corresponding application are enabled). By performing an operation (e.g., automatically) when a set of conditions are met without requiring further user input, the system is more user-friendly and the user-device interface is more efficient (e.g., by helping the user achieve an intended result and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0291] The computer system receives (902) information identifying the first shared content item as shared content by a receiving application of a plurality of applications (e.g., an instant messaging application, a mail application, or a social media application). The first shared content item is of a first type. In some embodiments, the information identifying the first shared content item is a representation of the content item and / or a link to the content item (e.g., not the content item itself). In some embodiments, the information identifying the first shared content item is a pointer or identifier to the content item that is readable by a corresponding application (e.g., a media application) designed to open such content. In some embodiments, a copy of the content item itself is shared, rather than an identification or link. For example, as described with reference to FIG. 5A4, information identifying the first shared content item (e.g., representation 5045b) is received in a messaging application.
[0292] In response to receiving information identifying the first shared content item as shared content (904), and in response to a determination that a first application of the plurality of applications can open the first type of content (e.g., the application can open and / or display the content), in response to a determination that information identifying the first shared content item as shared content is authorized to be provided to the first application (906), the computer system automatically makes the first shared content item available within the first application (e.g., without additional user input), and in response to a determination that information identifying the first shared content item as shared content is not authorized to be provided to the first application (908), the computer system does not automatically make the first shared content item available within the first application. For example, in response to a user opening the first application (e.g., after information identifying the content item is received by a messaging application), the content item, a copy of the content item, and / or a representation of the content item automatically appears within a dedicated area within the first application without the user having to take any action. For example, the user does not have to open a messaging application and select the content item for display in the first application. For example, whether information about content identified as being shared in a messaging application is provided to a corresponding application (e.g., an application designed to read and open such content) may be enabled or disabled for a particular application and / or content type. For example, as described with reference to Figures 5A4-5A6, a representation of Song A shared in a messaging conversation with Alex is displayed in a Music application as shown in Figure 5A6.
[0293] The ability to enable or disable sharing of information identifying a content item as shared content improves the discoverability of that content within associated applications without requiring further user input, while providing control over the sharing process. Performing an operation (e.g., automatically) when a set of conditions are met without requiring further user input improves system usability and provides a more efficient user-device interface (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, and reduces device power usage and improves battery life.
[0294] In some embodiments, the computer system receives (910) information by the messaging application identifying the second shared content item as shared content, the second shared content item being of a second type different from the first content type. In some embodiments, in response to receiving the information identifying the second shared content item as shared content, and in accordance with a determination that a second application of the plurality of applications different from the first application is capable of opening content of the second type and is authorized to provide information identifying the second shared content item as shared content to the second application, the computer system makes the second shared content item available automatically (e.g., without additional user input) within the second application. For example, when a user opens the second application after the information identifying the content item is received by the messaging application, the content item, a copy of the content item, or a representation of the content item automatically appears within a dedicated area within the first application without the user having to take any action (e.g., the user does not have to open the messaging application and select the content item for display within the second application). In some embodiments, pursuant to a determination that information identifying the second shared content item as shared content is not permitted to be provided to the second application, the computer system does not automatically make the second shared content item available in the first application. For example, whether information about content identified as being shared in a messaging application is provided to a corresponding application (e.g., an application designed to read and open such content) may be enabled or disabled for a particular application and / or content type. For example, a second type of content (e.g., podcast name A) is shared in a messaging conversation with Alex (e.g., a shared podcast is a different content type than the songs and news articles shared in the messaging conversation), as shown in FIG. 5A4.
[0295] The ability to enable or disable sharing of information identifying a content item as shared content for various applications and / or content types improves the discoverability of the content item within relevant applications without requiring further user input, while providing control over the sharing process. Performing an operation (e.g., automatically) when a set of conditions are met without requiring further user input improves the usability of the system and provides a more efficient user-device interface (e.g., by helping the user achieve an intended outcome and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0296] In some embodiments, the default setting of the computer system is to enable automatic content sharing from the messaging application to the plurality of applications (912). For example, as shown in FIG. 7A, initially, all listed applications enable automatic contact sharing. In some embodiments, the computer system receives a user input requesting to include a new application in the plurality of applications. In some embodiments, in response to the user input requesting to include a new application in the plurality of applications, the computer system includes the new application in the plurality of applications (e.g., the new application may be downloaded or installed on the computer system). In some embodiments, the computer system receives a user input requesting to turn off the default setting of the new application (e.g., the user requests to disable automatic sharing for the new application). For example, as shown in FIG. 7B, the user uses a toggle switch to turn "off" automatic content sharing for one or more applications. In some embodiments, in response to the user input requesting to turn off the default setting for the new application, the computer system includes the new application in a set of applications for which automatic content sharing from the messaging application to the set of applications is not allowed.
[0297] The ability to disable automatic content sharing from a messaging application to various applications and / or content types by blacklisting applications improves the discoverability of content items within related applications without requiring further user input while providing control over the sharing process. Performing an operation (e.g., automatically) when a set of conditions are met without requiring further user input improves system usability and provides a more efficient user-device interface (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0298] In some embodiments, the computer system receives (914) information by the messaging application identifying the second shared content item as shared content, the second shared content item being of a second type (e.g., different from the first type). In some embodiments, in response to receiving the information identifying the second shared content item as shared content and in accordance with a determination that (i) the second application is capable of opening content of the second type and (ii) the second application is included in a set of applications for which automatic content sharing from the messaging application to the set of applications is not permitted, the computer system does not automatically make the second shared content item available within the second application.
[0299] The ability to disable automatic content sharing from a messaging application to various applications and / or content types such that shared content does not automatically appear in blacklisted applications provides improved visual feedback to the user when the user accesses a blacklisted application by reducing the amount of clutter displayed in the accessed application. Providing improved visual feedback to the user improves system usability and provides a more efficient user-device interface (e.g., by assisting the user in achieving intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0300] In some embodiments, a default setting of the computer system is to not allow automatic content sharing from the messaging application to the multiple applications (916). For example, as shown in FIG. 7C, in some embodiments, "share with you" is set to off for all applications (e.g., as shown by toggle switch 7004 set to off). In some embodiments, the computer system receives a user input requesting to include a new application in the multiple applications. In some embodiments, in response to the user input requesting to include a new application in the multiple applications, the computer system includes the new application in the multiple applications (e.g., the new application may be downloaded or installed on the computer system). In some embodiments, the computer system receives a user input requesting to turn off the default setting for the new application (e.g., the user requests to enable automatic sharing for the new application). In some embodiments, in response to the user input requesting to turn off the default setting for the new application, the computer system includes the new application in a set of applications for which automatic content sharing from the messaging application to the set of applications is allowed. For example, as shown in FIG. 7D, a user may turn on the "share with you" setting for one or more applications.
[0301] The ability to enable automatic content sharing for various applications and / or content types by whitelisting applications improves discoverability of shared content items within relevant applications without requiring further user input while providing control over the sharing process. Performing an operation (e.g., automatically) when a set of conditions are met without requiring further user input improves system usability and provides a more efficient user-device interface (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0302] In some embodiments, the computer system receives (918) information by the messaging application identifying the second shared content item as shared content, the second shared content item being of a second type. In some embodiments, in response to receiving the information identifying the second shared content item as shared content and in accordance with a determination that (i) the second application is capable of opening content of the second type and (ii) the second application is included in a set of applications for which automatic content sharing from the messaging application to the set of applications is permitted, the computer system automatically makes the second shared content item available within the second application.
[0303] The ability to enable automatic content sharing for various applications and / or content types such that the shared content is automatically displayed in the whitelisted application provides improved visual feedback to the user by displaying the content without requiring the user to navigate complex menu hierarchies to manually request that the shared content be displayed in the whitelisted application. By providing the user with improved visual feedback and performing an operation (e.g., automatically) without requiring further user input when a set of conditions are met, the system is more user-friendly and the user-device interface is more efficient (e.g., by helping the user achieve an intended outcome and by reducing user failures when operating / interacting with the system), which further allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0304] In some embodiments, the receiving application is a messaging application, and information identifying the first shared content item as shared content is received (920) in a first conversation of a plurality of conversations in the messaging application, and a default setting of the computer system is to enable automatic content sharing from the plurality of conversations in the messaging application to the plurality of applications. For example, the information identifying the first shared content item is received in a communication thread within the messaging application. In some embodiments, the communication thread may include an exchange of messages between a user of the electronic device and one or more contacts stored on the electronic device (e.g., stored in a contacts application). In some embodiments, the communication thread may include a single message that includes information identifying the content as shared. In some embodiments, the message may include text. In some embodiments, the message may also include and / or identify other types of content, such as media content (e.g., photos, videos, GIFs, podcasts, applications, songs, etc.). In some embodiments, the computer system receives a new conversation in the messaging application and, in response to receiving the new conversation in the messaging application, includes the new application in the plurality of conversations. For example, a new conversation may be initiated by a user of the computer system by sending a message from a messaging application, or the new conversation may be a response to a user of the computer system receiving a message in a messaging application from a contact. In some embodiments, the computer system receives user input requesting that a default setting for new conversations be turned off (e.g., a user requests that automatic sharing of new conversations be disabled).In some embodiments, in response to user input requesting to turn off the default setting for new conversations, the computer system includes the new conversation in a set of conversations where automatic content sharing from the set of conversations to multiple applications is not allowed (e.g., a blacklist of messaging conversations for which automatic sharing is disabled).
[0305] The ability to disable automatic content sharing from specific message threads within a messaging application by blacklisting specific message threads without restricting automatic content sharing across all message threads within the messaging application provides improved visual feedback to the user by automatically displaying shared content only from approved message threads without requiring user input to manually sort the shared content the user wants to view and without displaying shared content received from blacklisted message threads. By performing an operation (e.g., automatically) without requiring further user input and providing improved visual feedback to the user when a set of conditions are met, the system is more user-friendly and the user-device interface is more efficient (e.g., by helping the user achieve an intended outcome and by reducing user failures when operating / interacting with the system), which further allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0306] In some embodiments, the computer system receives (922) information identifying the second shared content item as shared content in the second conversation, the second shared content item being of a first type. In some embodiments, in response to receiving the information identifying the second shared content item as shared content, and in accordance with a determination that (i) the first application can open content of the first type, and (ii) the second conversation is included in a set of conversations in which automatic content sharing from the set of conversations to multiple applications is not permitted, the computer system does not automatically make the second shared content item available within the first application. For example, as shown in FIG. 5G3, a user may enable "Hide Shares with You" using toggle switch 527 to control whether a selected conversation is enabled to use the automatic content sharing feature.
[0307] The ability to disable automatic content sharing for a particular messaging conversation (regardless of content type) improves the discoverability of shared content items within related applications without requiring further user input, while providing control over the sharing process. Performing an operation (e.g., automatically) when a set of conditions are met without requiring further user input improves system usability and provides a more efficient user-device interface (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, and reduces device power usage and improves battery life.
[0308] In some embodiments, the receiving application is a messaging application, and information identifying the first shared content item as shared content is received in a first conversation of multiple conversations in the messaging application (924), and a default setting of the computer system is to not enable automatic content sharing from multiple conversations in the messaging application to multiple applications. For example, the information identifying the first shared content item is received in a communication thread within the messaging application. In some embodiments, the communication thread may include an exchange of messages between a user of the electronic device and one or more contacts stored on the electronic device (e.g., stored in a contacts application). In some embodiments, the communication thread may include a single message that includes information identifying the content as shared. In some embodiments, the message may include text. In some embodiments, the message may also include and / or identify other types of content, such as media content (e.g., photos, videos, GIFs, podcasts, applications, songs, etc.). In some embodiments, a computer system receives a new conversation in a messaging application, and in response to receiving the new conversation in the messaging application that includes a new application for multiple conversations, the computer system receives user input requesting that a default setting be turned off for the new conversation (e.g., a user requests that automatic sharing be disabled for the new conversation). In some embodiments, in response to the user input requesting that the default setting be turned off for the new conversation, the computer system includes the new conversation in a set of conversations for which automatic content sharing from the set of conversations to multiple applications is allowed (e.g., a blacklist of messaging conversations for which automatic sharing is disabled).
[0309] The ability to enable automatic content sharing from specific message threads in a messaging application by whitelisting specific message threads without enabling automatic content sharing across all message threads in the messaging application provides improved visual feedback to the user by automatically displaying shared content only from approved (e.g., whitelisted) message threads without requiring user input to manually sort the shared content the user wants to view, and without displaying shared content received from unapproved message threads. By performing an operation (e.g., automatically) without requiring further user input and providing improved visual feedback to the user when a set of conditions are met, the system is more user-friendly and the user-device interface is more efficient (e.g., by helping the user achieve an intended outcome and by reducing user failures when operating / interacting with the system), which further allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0310] In some embodiments, the computer system receives (926) information identifying the second shared content item as shared content in the second conversation, the second shared content item being of a first type. In some embodiments, in response to receiving the information identifying the second shared item as shared content in the second conversation, and in accordance with a determination that (i) the first application is capable of opening content of the first type, and (ii) the second conversation is included in a set of conversations in which automatic content sharing from the set of conversations to multiple applications is permitted, the computer system makes the second shared content item available automatically (e.g., without user input) from within the first application. For example, automatic content sharing is turned "on" for a message conversation with Alex, as described with reference to Figures 5A4-5A6, and thus music content (e.g., Song A) shared by Alex in the message conversation is automatically displayed in the Music application, as shown in Figure 5A6.
[0311] The ability to enable sharing of information that identifies a content item as shared content for a particular messaging conversation (regardless of content type) improves the discoverability of the content item within related applications without requiring further user input, while providing control over the sharing process. Performing an action (e.g., automatically) when a set of conditions are met without requiring further user input improves system usability and makes the user-device interface more efficient (e.g., by helping the user achieve an intended outcome and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, and reduces device power usage and improves battery life.
[0312] In some embodiments, the plurality of applications includes a settings application (e.g., corresponding to settings application icon 446 of FIG. 4A , which provides a user with options for adjusting settings for the electronic device (e.g., system settings, network and connectivity settings, battery settings, display settings) and for adjusting settings for applications stored on the computer system) (928). In some embodiments, the computer system receives an input requesting to modify the content sharing settings, and in response to receiving the input requesting to modify the content sharing settings, the computer system displays a user interface for the content sharing settings, the user interface for the content sharing settings including a plurality of controls for authorizing the plurality of applications to provide information identifying content as shared. For example, a user of the computer system can use the user interface for the sharing-specific settings to allow (or remove permission to) provide information identifying content as shared. In some embodiments, the user interface for the content sharing settings is a user interface for a settings application for adjusting content sharing and other settings of the computer system. For example, as described above with reference to FIGS. 7A-7D , a user can update toggle switches 7010a-7010n to modify the content sharing settings of device 100.
[0313] The ability to enable or disable sharing of information identifying a content item as various shared content using a user interface for sharing-specific settings improves the discoverability of the content item within associated applications without requiring further user input while providing control over the sharing process. Performing an operation (e.g., automatically) when a set of conditions are met without requiring further user input improves system usability and makes the user-device interface more efficient (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, and reduces device power usage and improves battery life.
[0314] In some embodiments, the plurality of controls includes a control for activating and deactivating the provision of information identifying the content as shared content to all of the plurality of applications 930. For example, as described above with reference to Figures 7A-7D, a toggle switch 7004 may be provided to control the sharing settings for all associated applications.
[0315] Providing a control that allows a user to select, with a single user input, whether or not to allow information identifying content as shared content to be provided to all applications provides additional control options without the need to navigate through complex menu hierarchies, improving the user experience and providing additional visual feedback. Providing improved visual feedback to the user and providing additional control options without requiring further user input (e.g., automatically) improves usability of the system and makes the user-device interface more efficient (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently and reduces device power usage and improves battery life.
[0316] In some embodiments, the plurality of controls includes a control (e.g., toggle switch 7010a-7010n described with reference to Figures 7A-7D) for activating and deactivating the provision of the information identifying the content as shared content to each of a plurality of applications that can open the content for which information identifying the content as shared has been received (932).
[0317] Providing a control that allows a user to select, with a single user input, whether or not to allow each application to provide information identifying content as shared content provides additional control options without the need to navigate through complex menu hierarchies, improving the user experience and providing additional visual feedback. Providing improved visual feedback to the user and providing additional control options without requiring further user input (e.g., automatically) improves system usability and makes the user-device interface more efficient (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently and reduces device power usage and improves battery life.
[0318] In some embodiments, providing information identifying the content as shared content to the first application is not permitted (934), and the content item is not automatically made available within the first application in response to receiving information identifying the content item as shared content. In some embodiments, the computer system receives a request to allow providing information identifying the content item as shared content to one or more associated applications of a plurality of applications including the first application. For example, a user highlights information identifying the content item as shared content. In some embodiments, in response to a request to allow providing information identifying the content item as shared content to one or more associated applications, the computer system makes the content item automatically available from within the first application (e.g., as described with reference to Figures 5E5-5E8). In some embodiments, in response to receiving an input selecting information identifying the content item as shared content, a control (e.g., a star, pin, heart, etc.) for marking the content item as a favorite is displayed, the control being displayed over or near the location where the information identifying the content item was received. In some embodiments, in response to receiving an input selecting the control, the content item is marked as a favorite. In some embodiments, the same user input can be used to unmark a content item as a favorite, and in response to unmarking the content as a favorite, the computer system stops displaying information identifying the content item as being shared in the first application.
[0319] Providing a control that allows a user to mark individual items as favorites improves the user experience by providing additional control options for the sharing process without having to navigate through complex menu hierarchies, and provides visual feedback. Providing improved visual feedback to the user and providing additional control options without requiring further user input (e.g., automatically) when a set of conditions is met improves usability of the system and makes the user-device interface more efficient (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, and reduces device power usage and improves battery life.
[0320] In some embodiments, the computer system receives (936) a request to open a conversation of a plurality of conversations in a messaging application, the conversation including a message that includes information identifying a content item. In some embodiments, in response to the request to open the conversation, the computer system displays a user interface that includes a user-selectable affordance that at least partially includes a first messaging conversation and that, when selected, displays a first set of controls related to the first messaging conversation. For example, as described with reference to Figures 5G2-5G3, a tap input detected on an information icon (e.g., user-selectable option 523) in the messaging conversation (e.g., at the top of the messaging conversation user interface) causes the user interface shown in Figure 5G3 to be displayed. In some embodiments, tapping on an image associated with the messaging conversation or tapping on a description at the top associated with the messaging application opens a details view about the messaging conversation. In some embodiments, in response to a selection of the user-selectable affordance, the computer system simultaneously displays a first set of controls including a control for activating and deactivating the provision of information identifying the content as shared content for the conversation (e.g., the "Hide Shared with You" toggle switch 527 of Figure 5G3). For example, a first set of controls may include names of members associated with a messaging conversation, and images or avatars of the contacts who are participants in the messaging conversation.
[0321] Providing a control that allows a user to select whether to allow or not allow the provision of information identifying content as shared content for an individual messaging conversation using the messaging conversation user interface improves the user experience by providing additional control options without having to navigate through complex menu hierarchies and provides additional visual feedback. Providing improved visual feedback to the user and providing additional control options without requiring further user input (e.g., automatically) improves system usability and makes the user-device interface more efficient (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently and reduces device power usage and improves battery life.
[0322] In some embodiments, the computer system simultaneously displays (938) a first set of conversation-specific controls and information, as described with reference to FIG. 5G3.
[0323] Automatically displaying additional information about a selected conversation simultaneously with the set of controls for the selected conversation provides the user with additional control options without requiring the user to navigate complex menu hierarchies, improving the user experience and providing additional visual feedback to the user. Providing improved visual feedback to the user and providing additional control options without requiring further user input (e.g., automatically) improves usability of the system and makes the user-device interface more efficient (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently and reduces device power usage and improves battery life.
[0324] In some embodiments, the information specific to the first conversation includes names of contacts associated with the conversation (e.g., a list of the names of the participants in a messaging conversation), avatars of contacts associated with the conversation (e.g., avatars of the participants in the conversation), and / or the number of contacts associated with the conversation (e.g., the number of contacts that are part of the conversation or group chat), as shown in FIG. 5G3 (940).
[0325] Automatically displaying additional information, such as identifying information, about individuals participating in a selected conversation provides a user with real-time visual feedback about which users are included in a conversation without requiring the user to navigate complex menu hierarchies to find the information. Providing improved visual feedback to the user and providing additional control options without requiring further user input (e.g., automatically) improves usability of the system and provides a more efficient user-device interface (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently and reduces device power usage and improves battery life.
[0326] In some embodiments, the first set of controls includes one or more options for communicating with one or more users participating in the conversation (942) (e.g., options for an audio conversation with participants in the messaging conversation, options for a video conversation / chat with participants in the messaging conversation, options for sending emails to participants in the messaging conversation, and options for a co-presence experience) (e.g., controls 526a-526d described with reference to FIG. 5G3). In some embodiments, the messaging conversation is a group chat with three or more participants. In some embodiments, some of the participants are contacts stored in the memory of the electronic device. In some embodiments, the one or more options for communicating with one or more users participating in the first messaging conversation include an option to share a location with one or more users participating in the conversation, an option to leave the conversation, and / or an option to edit a name or photo associated with the conversation.
[0327] Providing a user with the option to reply to or otherwise contact individuals participating in the selected conversation provides the user with improved visual feedback and provides the user with the option to easily communicate with individuals participating in the selected conversation without requiring the user to navigate through complex menu hierarchies to communicate with the individuals. Providing the user with improved visual feedback and providing additional control options without requiring further user input (e.g., automatically) improves usability of the system and provides a more efficient user-device interface (e.g., by assisting the user in achieving intended results and by reducing user failures when operating / interacting with the system), which further enables the user to use the device more quickly and efficiently, and reduces device power usage and improves battery life.
[0328] In some embodiments, simultaneously displaying the first set of controls and the information specific to the conversation further includes displaying a plurality of shared content items and a plurality of indicators for each displayed content item of the plurality of content (944), each of the plurality of indicators indicating that information identifying a corresponding content item of the plurality of content items was received in the conversation. For example, as shown in FIG. 5G3, the shared content is displayed with a shared indicator 528.
[0329] Displaying information to distinguish shared content items within a selected conversation, simultaneously with additional controls for interacting with the selected conversation, provides improved visual feedback to the user by allowing the user to easily see information about the shared content items, without requiring the user to navigate complex menu hierarchies to manually obtain the information. Providing improved visual feedback to the user and providing additional control options without requiring further user input (e.g., automatically) improves system usability and makes the user-device interface more efficient (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0330] In some embodiments, a request to share a content item is initiated (946) from a remote messaging application on a remote electronic device. For example, the content item (information identifying the first shared content item) is shared via a messaging interface that includes a message transcript between at least two users. In some embodiments, the messaging interface includes a messaging conversation with the ability to return to the messaging conversation upon request from a different application (e.g., as described with reference to Figures 5E1-5E2 and 5F2).
[0331] Enabling content items to be shared from a remote device via a messaging application that is also used by the sharing device and the receiving device improves the user experience by providing improved visual feedback to the user to facilitate viewing the shared content item within a messaging thread in the messaging application, and by enabling a user of a device to share and receive shared content items using the messaging application. Providing improved visual feedback to the user improves system usability and makes the user-device interface more efficient (e.g., by assisting the user in achieving intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0332] In some embodiments, the request to share the content item is initiated (948) by a remote user of the remote messaging application who is authorized to provide information identifying the content item as shared content to the first application (e.g., pursuant to the configuration interface described above). In some embodiments, in response to receiving the information identifying the content item as shared content, and pursuant to a determination that the remote user is not a contact of the plurality of contacts stored in memory, the computer system does not make the content item available in the first application. In some embodiments, pursuant to a determination that the remote user is a contact of the plurality of contacts stored in memory, the computer system does not make the content item available in the first application.
[0333] Allowing content items to be shared from remote devices associated with individuals that the receiving device recognizes as stored contacts, without automatically enabling shared content from individuals not recognized by the device as stored contacts, provides improved visual feedback to the user and improves the user experience by only allowing shared content from stored contacts to be displayed automatically. Providing improved visual feedback to the user improves system usability and makes the user-device interface more efficient (e.g., by assisting the user in achieving intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0334] In some embodiments, making the first shared content item available in the first application automatically (e.g., without additional user input) is not responsive to receiving a user request to open the first shared content item in the messaging application (950). For example, a user may view and open the first shared content item in the messaging application independent of the content items available in the first application. For example, the first shared content item is made available in the first application even if the user has not opened the first shared content (e.g., or a conversation thread) in the messaging application.
[0335] Providing a user with the option to view a shared content item in a messaging application without affecting how the shared content item is automatically displayed in the first application provides improved visual feedback to the user such that the shared content item is automatically available in the first application regardless of whether the user viewed and / or opened the shared content item in the messaging application in which it was shared. Providing improved visual feedback to the user improves system usability and provides a more efficient user-device interface (e.g., by assisting the user in achieving intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0336] In some embodiments, pursuant to a determination that information identifying the first shared content item as shared content is permitted to be provided to the first application, the first shared content item is automatically made available for later viewing within the first application (952). For example, a representation of the shared content item is displayed within a dedicated section for shared items within the first application, and a user may select the shared content item at a later time to view, play, or otherwise consume the shared content item. For example, FIGS. 5I1-5I10 provide multiple examples of shared content items displayed within different media applications (e.g., pursuant to a determination that sharing functionality is enabled for the applications shown in FIGS. 5I1-5I10).
[0337] Automatically displaying the shared content in an associated application based on the type of content after the shared content is received by a separate messaging application provides the user with improved visual feedback to make the shared content item accessible in the associated application without requiring user input to discover or view the shared content item from within the associated application. Performing an operation (e.g., automatically) when a set of conditions are met without requiring further user input improves system usability and provides a more efficient user-device interface (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which in turn allows the user to use the device more quickly and efficiently, reducing device power usage and improving battery life.
[0338] In some embodiments, the receiving application is a messaging application (954).
[0339] It should be understood that the particular order described for the operations in Figures 9A-9E is merely an example, and the order described is not intended to indicate that the operations are the only order in which they can be performed. Those skilled in the art will recognize various ways to reorder the operations described herein. Furthermore, it should be noted that other process details described herein with respect to other methods described herein (e.g., methods 800, 1000, and 1100) may also be applied in a manner similar to method 900 described above with respect to Figures 9A-9E. For example, the user input described above with reference to method 900 optionally has one or more characteristics of the user input described herein with reference to other methods described herein (e.g., methods 800, 1000, and 1100). For the sake of brevity, those details will not be repeated here.
[0340] 10A-10E are flow diagrams illustrating a method 1000 of displaying information about how a content item has been shared, according to some embodiments. Method 1000 is performed in an electronic device (e.g., device 300 of FIG. 3 or portable multifunction device 100 of FIG. 1A) in communication with (e.g., including) a display generation component (e.g., an optionally touch-sensitive display device, projector, head-mounted display, head-up display, etc.) and one or more input devices (e.g., including one or more sensors for detecting the intensity of contact with a touch-sensitive surface). In some embodiments, the display generation component is a touch screen display, and the touch-sensitive surface is on or integrated into the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 1000 are optionally combined and / or the order of some operations is optionally changed.
[0341] As described herein, the method 1000 provides a selectable attribute affordance in a first (e.g., media) application that provides a link to a location in a second (e.g., messaging) application where information identifying a content item was originally shared. Upon selection of the selectable attribute affordance, displaying the second (e.g., messaging) application at the location where information identifying the content item was originally shared improves discoverability of the shared content and messages in which the content was shared, improves communication with the contacts who shared the content, reduces the number of inputs required to discover the shared content and messages in which the content was shared, and reduces the number of inputs required to reply to the contacts who shared the content. Additionally, the selectable attribute affordance provides visual feedback that the content was shared, who shared the content, and how many contacts shared the content (if more than one). Providing the user with improved visual feedback and reducing the number of inputs required to perform an operation enhances usability of the device and makes the user-device interface more efficient (e.g., by assisting the user in providing appropriate inputs and reducing user errors when operating / interacting with the device). This additionally reduces power usage and improves the battery life of the device by allowing the user to use the device more quickly and efficiently.
[0342] While displaying (1001) a view of a first application (e.g., a user interface of the application including a set of tabs, such as a library user interface, or a single tab within the set of tabs (e.g., "Listen Now" may be one tab and "Radio" another tab in a main user interface of an "Apple Music" application)) of a plurality of applications (e.g., a TV app, a music app, a books app, a podcasts app, a news app, etc.) stored in memory, the electronic device displays a representation (1002) of a first shared content item (e.g., a representation or identification of the content item is added to a conversation in a messaging app) and a selectable attribute affordance (1004) (e.g., a user interface object) that provides a link to a location in a second application where information identifying the first shared content item was originally shared. For example, as described with reference to FIGS. 5A6-5A7, while the music application is displayed, a representation of song title-A is displayed and a selectable capsule 5056a (e.g., a selectable attribute affordance), when selected, causes the device to display a message thread in which song title-A was shared. For example, selection of a selectable attribute affordance initiates a process for displaying a user interface of a second application from which information identifying the content item was received. In some embodiments, the first shared content item is a single media file. In some embodiments, the first shared content item is a collection of media items (e.g., an album of photos, an album of songs, a series of episodes, a podcast channel with a series of podcasts, etc.).
[0343] In some embodiments, the electronic device obtains (1006) information identifying the first shared content item in the first application in accordance with a determination that information identifying the first shared content item was initially received from one or more of a plurality of contacts stored in the memory of the electronic device prior to displaying the first shared content item in the first application. For example, prior to displaying Song Title-A in the music application, device 100 determines that Song Title-A was shared by a contact stored on device 100 (e.g., "Alex" is a contact, as described with reference to FIGS. 5A6-5A7).
[0344] Determining whether the shared content was shared by a contact (as opposed to a non-contact user) prior to automatically obtaining information identifying the shared content in a first (e.g., media) application improves the relevance of the shared content displayed in relevant applications (e.g., in which the content can be opened) and reduces the number of inputs required to perform an action. Reducing the number of inputs required to interact with the shared content enhances usability of the device and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing the device's power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0345] In some embodiments, the selectable attribute affordance further indicates the name of the contact from whom the information identifying the first shared content item originated (1008). For example, as shown in FIG. 5A6, selectable capsule 5056a displays "Alex" to indicate that "Alex" is the contact who shared the first shared content item.
[0346] Displaying the names of contacts with whom a content item has been shared provides additional visual feedback. Providing improved visual feedback to the user may improve usability of the system and provide a more efficient user-device interface (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the system), which may in turn allow the user to use the device more quickly and efficiently, and may reduce device power usage and improve battery life.
[0347] In some embodiments, the selectable attribute affordance further indicates (1010) an avatar representing the contact from whom the information identifying the first shared content item was received. For example, as shown in FIG. 5A6, selectable capsule 5056a includes an avatar for Alex. In some embodiments, device 100 simultaneously displays text identifying the contact (e.g., "Alex") and / or an avatar representing Alex. It will be appreciated that in some embodiments, device 100 displays alternative and / or additional indications of the contact who shared the first content item.
[0348] Displaying avatars of contacts who have shared content items provides additional visual feedback. Providing improved visual feedback to users may improve system usability and provide a more efficient user-device interface (e.g., by helping users achieve intended results and by reducing user failures when operating / interacting with the system), which may in turn allow users to use the device more quickly and efficiently, and may reduce device power usage and improve battery life.
[0349] In some embodiments, the electronic device receives (1012) an input in the first application selecting a selectable attribute affordance (e.g., tapping or long pressing the “From” capsule) and, in response to the input, displays information identifying the first shared content item at a location in the second application where the information identifying the first shared content item was originally shared (e.g., the location in the second application where the request to share the content item was received). For example, as described with reference to FIGS. 5A6 and 5A7, in some embodiments, in response to a user selecting the selectable capsule 5056a, the electronic device displays a message thread in which Song Title-A was shared (e.g., a message thread with Alex). In some embodiments, the device displays the most recent portion of the message thread (e.g., instead of displaying the portion of the message thread in which the media item was shared).
[0350] Selecting a selectable attribute affordance, displaying information identifying the shared content item in a location within a second (e.g., messaging application) where the information was originally shared improves discoverability of the shared content, improves discoverability of the conversation in which the content was shared, improves communication with the contact who shared the content, reduces the number of inputs required to discover the shared content and the message / conversation in which the content was shared, and reduces the number of inputs required to reply to the contact who shared the content. Reducing the number of inputs required to perform actions enhances usability of the device and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing the device's power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0351] In some embodiments, the second application is a messaging application including multiple messaging conversations, and the information identifying the content item was received in a first messaging conversation of the multiple messaging conversations. In some embodiments, the electronic device, in response to receiving an input selecting the selectable attribute affordance, displays (1014) a portion of a message thread of the first messaging conversation including a previously received message in the first messaging conversation in which the information identifying the first shared content item was originally shared (e.g., the message thread displays both sides of the messaging conversation in chronological order on one screen, with messages from the contacts displayed on one side and messages from the user of the electronic device / computer system displayed on the other side). For example, upon tapping the selectable attribute affordance, the method displays the messaging conversation and auto-scrolls to the message including the information identifying the content item as shared content. For example, as described with reference to Figures 5A6 and 5A8, in some embodiments, in response to a user selecting selectable capsule 5056a, the electronic device displays message 5001d (e.g., a message sharing song title-A) as the bottom message in a message thread of the messaging application shown in Figure 5A8.
[0352] Selecting a selectable attribute affordance to display a previously received message containing information identifying the shared content item improves discoverability of the shared content, improves discoverability of previously received messages in which content was shared, improves communication with contacts who shared content, reduces the number of inputs required to discover the shared content and the message / conversation in which the content was shared, and reduces the number of inputs required to reply to contacts who shared the content. Reducing the number of inputs required to perform actions enhances usability of the device and makes the user-device interface more efficient (e.g., by helping the user make appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0353] In some embodiments, ...
Claims
1. 1. A method comprising: A computer system in communication with a display generation component and one or more input devices, comprising: receiving, by a first receiving application of the plurality of applications, information identifying a first shared content item; In response to receiving the information identifying the first shared content item, automatically making the first shared content item available in a first application of the plurality of applications, the first application being associated with the first type of content in accordance with a determination that the first shared content item is of a first type; and automatically making the first shared content item available in a second application of the plurality of applications, the second application being associated with the second type of content in accordance with a determination that the first shared content item is of a second type.
2. 2. The method of claim 1, wherein the second type is different from the first type, the first application is not associated with content of the second type, and the second application is not associated with content of the first type.
3. receiving, by a second receiving application of the plurality of applications, information identifying a second shared content item, the second shared content item being different from the first receiving application; in response to receiving the information identifying the second shared content item, automatically making the second shared content item available in the first application of the plurality of applications in accordance with a determination that the second shared content item is of the first type; automatically making the second shared content item available in the second application of the plurality of applications in accordance with a determination that the second shared content item is of the second type; The method of claim 1 further comprising:
4. the information identifying a first shared content item is received at a first location of the first receiving application; receiving, at a second location of the first receiving application, information identifying a third shared content item; in response to receiving the information identifying the third shared content item; automatically making the third shared content item available in the first application of the plurality of applications in accordance with a determination that the third shared content item is of the first type; The method of any one of claims 1 to 3, further comprising: automatically making the third shared content item available in the second application of the plurality of applications in accordance with a determination that the third shared content item is of the second type.
5. The first shared content item is of the first type, and the method further comprises: receiving, at the computer system, a user input for adding the first shared content item to a library of the first application; 4. The method of claim 1, further comprising: in response to receiving the user input for adding the first shared content item to the library of the first application, adding the first shared content item to the library of the first application.
6. The method of claim 5 , wherein the first shared content item is not automatically added to a library of the first application in response to receiving the information identifying the first shared content item.
7. in response to receiving the information identifying the first shared content item and in accordance with the determination that the first shared content item is of the second type; The method of claim 1 , further comprising automatically adding the first shared content item to a library in the second application of the plurality of applications.
8. a plurality of pieces of information identifying respective shared content items of the first type to be aggregated for display in the first application; and a plurality of pieces of information identifying each shared content item of the second type are aggregated for display in the second application. The method according to any one of claims 1 to 3.
9. the plurality of pieces of information identifying each shared content item of the first type are displayed in a dedicated section of the first application; the plurality of pieces of information identifying each shared content item of the second type are displayed in a dedicated section of the second application; The method of claim 8 further comprising:
10. receiving, at the first receiving application, information identifying a first plurality of shared content items, the first plurality of shared content items being of the first type; receiving, after receiving the information identifying the first plurality of shared content items, a request to open the first application via the one or more input devices; in response to receiving the request to open the first application, simultaneously displaying the information identifying the first plurality of shared content items in the dedicated section of the first application and a second plurality of content items of the first type in a portion of the first application other than the dedicated section; The method of claim 9 further comprising:
11. The method of claim 9 , wherein the dedicated section of the first application and the dedicated section of the second application are visually similar.
12. The first plurality of shared content items are of the first type, and the method further comprises:
11. The method of claim 10, further comprising removing the information identifying a content item from display in the dedicated section of the first application in accordance with a determination that a predetermined criterion is met for the content item in the first plurality of shared content items.
13. The predetermined criterion is a time-based criterion, and the method further comprises:
13. The method of claim 12, further comprising removing the information identifying the content item from display within a dedicated section of the first application in accordance with a determination that a predetermined amount of time has elapsed since the content item was shared.
14. The first shared content item is of a first type, and automatically making the first shared content item available in the first application includes:
2. The method of claim 1, further comprising providing the first application with a mechanism for navigating to a location within the first receiving application where the information identifying the first shared content item was originally received.
15. Providing the mechanism to the first application for navigating to the location within the first receiving application where the information identifying the first shared content item was originally received, comprising: The method of claim 14 , further comprising auto-scrolling to a location within the first receiving application where the first shared content item was originally received.
16. The method of claim 1 , wherein the request to share the first shared content item is initiated from a remote messaging application on a remote electronic device.
17. The plurality of contacts is stored in a contacts application of the plurality of applications, and the method further comprises:
2. The method of claim 1 , further comprising: determining that the information identifying the first shared content item has been received from one or more of the plurality of contacts prior to automatically making the first shared content item available within the first application or the second application.
18. 20. The method of claim 17, further comprising determining that the information identifying the first shared content item has been received from a contact among the one or more of the plurality of contacts that meets a communication criterion prior to automatically making the first shared content item available within the first application or the second application.
19. 20. The method of claim 17, further comprising determining that the information identifying the first shared content item has been received from a contact among the one or more of the plurality of contacts that meets a threshold level of communication prior to automatically making the first shared content item available within the first application or the second application.
20. The plurality of contacts is stored in a contacts application of the plurality of applications, and the method further comprises:
2. The method of claim 1, further comprising, prior to automatically making the first shared content item available within the first application or the second application, determining that the information identifying the first shared content item has been received by a group conversation that meets a threshold level of communication, wherein two or more of the plurality of contacts are participants in the group conversation.
21. The method of claim 1 , wherein the first receiving application is a messaging application.
22. 1. A computer system comprising: a display generation component; one or more input devices; one or more processors; and a memory storing one or more programs, the one or more programs being configured to be executed by the one or more processors, the one or more programs comprising: receiving, by a first receiving application of the plurality of applications, information identifying a first shared content item; In response to receiving the information identifying the first shared content item, automatically making the first shared content item available in a first application of the plurality of applications, the first application being associated with the first type of content, in accordance with a determination that the first shared content item is of a first type; a computer system including instructions for automatically making the first shared content item available within a second application of the plurality of applications, the second application being associated with content of the second type, in accordance with a determination that the first shared content item is of a second type.
23. A computer-readable storage medium having stored thereon one or more programs, the one or more programs comprising instructions that, when executed by a computer system having a display generating component and one or more input devices, cause the device to: receiving, by a first receiving application of the plurality of applications, information identifying the first shared content item; In response to receiving the information identifying the first shared content item, automatically making the first shared content item available in a first application of the plurality of applications, the first application being associated with the first type of content, in accordance with a determination that the first shared content item is of a first type; In accordance with a determination that the first shared content item is of a second type, automatically making the first shared content item available within a second application of the plurality of applications, the second application being associated with the second type of content.
24. 1. A computer system comprising: a display generation component; one or more input devices; means for receiving, by a first receiving application of the plurality of applications, information identifying a first shared content item; In response to receiving the information identifying the first shared content item, automatically making the first shared content item available in a first application of the plurality of applications, the first application being associated with the first type of content, in accordance with a determination that the first shared content item is of a first type; and means for automatically making the first shared content item available within a second application of the plurality of applications, the second application being associated with the second type of content, in accordance with a determination that the first shared content item is of a second type.
25. 1. An information processing apparatus for use in a computer system having a display generating component and one or more input devices, comprising: means for receiving, by a first receiving application of the plurality of applications, information identifying a first shared content item; In response to receiving the information identifying the first shared content item, automatically making the first shared content item available in a first application of the plurality of applications, the first application being associated with the first type of content, in accordance with a determination that the first shared content item is of a first type; and means for automatically making the first shared content item available within a second application of the plurality of applications, the second application being associated with content of the second type, in accordance with a determination that the first shared content item is of a second type.
26. 1. A computer system comprising: a display generation component; a touch-sensitive surface; and one or more input devices; one or more processors; A computer system comprising: a memory having stored therein one or more programs, the one or more programs being configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any one of claims 1 to 21.
27. 22. A computer readable storage medium having stored thereon one or more programs, the one or more programs including instructions that, when executed by a computer system comprising a display generating component and one or more input devices, cause the device to perform the method of any one of claims 1 to 21.
28. A graphical user interface of a computer system comprising a display generating component, one or more input devices, a memory, and one or more processors executing one or more programs stored in the memory, the graphical user interface comprising a user interface displayed according to the method of any one of claims 1 to 21.
29. 1. A computer system comprising: a display generation component; one or more input devices; A computer system comprising: means for executing the method according to any one of claims 1 to 21.
30. 1. An information processing apparatus for use in a computer system having a display generating component and one or more input devices, comprising: An information processing device comprising means for carrying out the method according to any one of claims 1 to 21.
31. It is a method A computer system in communication with a display generation component and one or more input devices, comprising: receiving, by a receiving application of the plurality of applications, information identifying a first shared content item as shared content, the first shared content item being of a first type; in response to receiving the information identifying the first shared content item as shared content and in accordance with a determination that a first application of the plurality of applications is capable of opening the first type of content; automatically making the first shared content item available within the first application in accordance with a determination that the information identifying the first shared content item as shared content is authorized to be provided to the first application; not automatically making the first shared content item available within the first application in accordance with a determination that information identifying the first shared content item as shared content is not permitted to be provided to the first application.
32. receiving, by the receiving application, information identifying a second shared content item as shared content, the second shared content item being a different content type than the first content type; in response to receiving the information identifying the second shared content item as shared content; and a second application of the plurality of applications, the second application being different from the first application, capable of opening a second type of content; In response to a determination that the information identifying the second shared content item as shared content is authorized to be provided to the second application, automatically making the second shared content item available within the second application; not automatically making the second shared content item available within the first application in accordance with a determination that information identifying the second shared content item as shared content is not authorized to be provided to the second application; and 32. The method of claim 31 further comprising:
33. a default setting of the computer system is to enable automatic content sharing from the receiving application to the plurality of applications, the method comprising: receiving a user input requesting inclusion of a new application in the plurality of applications; including the new application in the plurality of applications in response to the user input requesting inclusion of the new application in the plurality of applications; receiving a user input requesting that the default setting of the new application be turned off; 32. The method of claim 31, further comprising, in response to the user input requesting to turn off the default setting for the new application, including the new application in a set of applications in which automatic content sharing from the receiving application to the set of applications is not allowed.
34. receiving, by the receiving application, information identifying a second shared content item as shared content, the second shared content item being of a second type; In response to receiving the information identifying the second shared content item as shared content, (i) a second application can open the second type of content, and (ii) in accordance with a determination that the second application is in the set of applications that are not authorized for automatic content sharing from the receiving application to the set of applications, not automatically making the second shared content item available within the second application.
34. The method of claim 33, further comprising:
35. a default setting of the computer system is to not enable automatic content sharing from the receiving application to the plurality of applications, the method comprising: receiving a user input requesting inclusion of a new application in the plurality of applications; including the new application in the plurality of applications in response to the user input requesting inclusion of the new application in the plurality of applications; receiving a user input requesting that the default setting of the new application be turned off; 32. The method of claim 31, further comprising, in response to the user input requesting to turn off the default setting for the new application, including the new application in a set of applications in which automatic content sharing from the receiving application to the set of applications is not allowed.
36. receiving, by the receiving application, information identifying a second shared content item as shared content, the second shared content item being of a second type; In response to receiving the information identifying the second shared content item as shared content, (i) a second application is capable of opening the second type of content, and (ii) in accordance with a determination that the second application is included in a set of applications that are permitted for automatic content sharing from the receiving application to the set of applications, automatically making the second shared content item available within the second application; 36. The method of claim 35, further comprising:
37. the receiving application is a messaging application, the information identifying the first shared content item as shared content is received in a first conversation of a plurality of conversations in the messaging application, and a default setting of the computer system is to enable automatic content sharing from the plurality of conversations in the messaging application to the plurality of applications, the method comprising: receiving a new conversation in the messaging application; responsive to receiving the new conversation at the messaging application, including the new conversation in the plurality of conversations; receiving a user input requesting that the default setting for the new conversation be turned off; 32. The method of claim 31, further comprising, in response to the user input requesting to turn off the default setting for the new conversation, including the new conversation in a set of conversations in which automatic content sharing from the set of conversations to the multiple applications is not allowed.
38. receiving information identifying a second shared content item as shared content via a second conversation, the second shared content item being of the first type; in response to receiving the information identifying the second shared content item as shared content and in accordance with a determination that (i) the first application is capable of opening the first type of content and (ii) the second conversation is included in a set of conversations in which automatic content sharing from the set of conversations to the plurality of applications is not permitted, not automatically making the second shared content item available within the first application; 38. The method of claim 37, further comprising:
39. the receiving application is a messaging application, the information identifying the first shared content item as shared content is received in a first conversation of a plurality of conversations in the messaging application, and a default setting of the computer system is to not enable automatic content sharing from the plurality of conversations in the messaging application to the plurality of applications, the method comprising: receiving a new conversation in the messaging application; responsive to receiving the new conversation at the messaging application, including the new application in the plurality of conversations; receiving a user input requesting to turn off the default setting for the new conversation; 32. The method of claim 31, further comprising, in response to the user input requesting to turn off the default setting for the new conversation, including the new conversation in a set of conversations for which automatic content sharing from the set of conversations to the plurality of applications is allowed.
40. receiving information identifying a second shared content item as shared content via a second conversation, the second shared content item being of the first type; in response to receiving the information identifying the second shared item as shared content within the second conversation, and in accordance with a determination that (i) the first application is capable of opening the first type of content, and (ii) the second conversation is included in a set of conversations for which automatic content sharing from the set of conversations to the plurality of applications is permitted, automatically making the second shared content item available from within the first application; 40. The method of claim 39, further comprising:
41. The plurality of applications includes a configuration application, and the method further comprises: receiving an input requesting a change to a content sharing setting; 39. The method of claim 31, further comprising: in response to receiving the input requesting to modify a content sharing configuration, displaying a user interface for content sharing configuration, the user interface for content sharing configuration including a plurality of controls for authorizing the plurality of applications to provide information identifying content as shared.
42. 42. The method of claim 41, wherein the plurality of controls includes controls for activating and deactivating the provision of information identifying content as shared content to all of the plurality of applications.
43. 42. The method of claim 41, wherein the plurality of controls includes a control for activating and deactivating the provision of information identifying content as shared content for each application of the plurality of applications that can open content for which information identifying content as shared has been received.
44. providing information identifying content as shared content to the first application is not permitted, and the content item is not automatically made available within the first application in response to receiving the information identifying the content item as shared content, the method comprising: receiving a request to authorize provision of information identifying the content item as shared content to one or more associated applications of the plurality of applications, including the first application; 32. The method of claim 31, further comprising: automatically making the content item available from within the first application in response to the request permitting information identifying the content item as shared content to be provided to one or more associated applications.
45. the receiving application is a messaging application, and the method comprises: receiving, in the messaging application, a request to open a conversation, the conversation being one of a plurality of conversations, the conversation including a message including the information identifying the content item; in response to the request to open the conversation, displaying a user interface including at least a message thread of the messaging conversation and including user selectable affordances that, when selected, display a first set of controls related to the messaging conversation; 32. The method of claim 31, further comprising: simultaneously displaying the first set of controls, including controls for activating and deactivating the providing of the information identifying the content as shared content of the conversation, in response to a selection of the user-selectable affordance.
46. simultaneously displaying the first set of controls and information specific to the conversation; 46. The method of claim 45, further comprising:
47. 47. The method of claim 46, wherein the information specific to the first conversation includes a name of a contact associated with the conversation, an avatar of a contact associated with the conversation, and / or a number of contacts associated with the conversation.
48. 47. The method of claim 46, wherein the first set of controls includes one or more options for communicating with one or more users participating in the conversation.
49. Concurrently displaying the first set of controls and the information specific to the conversation includes:
47. The method of claim 46, further comprising displaying a plurality of shared content items and a plurality of indicators for each displayed content item of the plurality of content, each indicator indicating that information identifying a corresponding content item of the plurality of content items has been received in the conversation.
50. 32. The method of claim 31, wherein the request to share the content item is initiated from a remote messaging application on a remote electronic device.
51. the request to share the content item is initiated by a remote user of the remote messaging application authorized to provide the information identifying the content item as shared content to the first application, the method comprising: in response to receiving the information identifying the content item as shared content, in response to a determination that the remote user is not a contact of the plurality of contacts stored in the memory, not making the content item available within the first application; 51. The method of claim 50, further comprising: making the content item available within the first application in accordance with a determination that the remote user is a contact of the plurality of contacts stored in the memory.
52. 32. The method of claim 31, wherein automatically making the first shared content item available within the first application is not in response to receiving a user request to open the first shared content item in the receiving application.
53. pursuant to the determination that the information identifying the first shared content item as shared content is authorized to be provided to the first application, the first shared content item is automatically made available for later viewing within the first application; 32. The method of claim 31 further comprising:
54. 32. The method of claim 31, wherein the first receiving application is a messaging application.
55. 1. A computer system comprising: a display generation component; one or more input devices; one or more processors; and a memory storing one or more programs, the one or more programs being configured to be executed by the one or more processors, the one or more programs comprising: receiving, by a receiving application of the plurality of applications, information identifying a first shared content item as shared content, the first shared content item being of a first type; in response to receiving the information identifying the first shared content item as shared content and in accordance with a determination that a first application of the plurality of applications is capable of opening the first type of content; automatically making the first shared content item available within the first application in accordance with a determination that the information identifying the first shared content item as shared content is authorized to be provided to the first application; 11. A computer system comprising: instructions for not automatically making the first shared content item available within the first application in accordance with a determination that information identifying the first shared content item as shared content is not permitted to be provided to the first application.
56. A computer-readable storage medium having stored thereon one or more programs, the one or more programs comprising instructions that, when executed by a computer system having a display generating component and one or more input devices, cause the device to: receiving, by a receiving application of the plurality of applications, information identifying a first shared content item as shared content, the first shared content item being of a first type; in response to receiving the information identifying the first shared content item as shared content and in accordance with a determination that a first application of the plurality of applications is capable of opening the first type of content; pursuant to a determination that the information identifying the first shared content item as shared content is authorized to be provided to the first application, causing the first shared content item to be automatically made available within the first application; 12. A computer-readable storage medium comprising: a computer-readable storage medium for storing a content item that is shared by a first application and a second application;
57. 1. A computer system comprising: a display generation component; one or more input devices; means for receiving, by a receiving application of the plurality of applications, information identifying a first shared content item as shared content, the first shared content item being of a first type; in response to receiving the information identifying the first shared content item as shared content and in accordance with a determination that a first application of the plurality of applications is capable of opening the first type of content; automatically making the first shared content item available within the first application in accordance with a determination that the information identifying the first shared content item as shared content is authorized to be provided to the first application; and means enabled for not automatically making the first shared content item available within the first application in accordance with a determination that information identifying the first shared content item as shared content is not authorized to be provided to the first application.
58. 1. An information processing apparatus for use in a computer system having a display generating component and one or more input devices, comprising: means for receiving, by a receiving application of the plurality of applications, information identifying a first shared content item as shared content, the first shared content item being of a first type; in response to receiving the information identifying the first shared content item as shared content and in accordance with a determination that a first application of the plurality of applications is capable of opening the first type of content; automatically making the first shared content item available within the first application in accordance with a determination that the information identifying the first shared content item as shared content is authorized to be provided to the first application; and means enabled for not automatically making the first shared content item available within the first application in accordance with a determination that information identifying the first shared content item as shared content is not authorized to be provided to the first application.
59. 1. A computer system comprising: a display generation component; a touch-sensitive surface; and one or more input devices; one or more processors; A computer system comprising: a memory having stored therein one or more programs, the one or more programs being configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any one of claims 31 to 54.
60. 54. A computer readable storage medium having stored thereon one or more programs, the one or more programs including instructions that, when executed by a computer system comprising a display generating component and one or more input devices, cause the device to perform the method of any one of claims 31 to 53.
61. A graphical user interface for a computer system comprising a display generating component, one or more input devices, a memory, and one or more processors executing one or more programs stored in the memory, the graphical user interface comprising a user interface displayed according to the method of any one of claims 31 to 53.
62. 1. A computer system comprising: a display generation component; one or more input devices; A computer system comprising: means for executing the method according to any one of claims 31 to 53.
63. 1. An information processing apparatus for use in a computer system having a display generating component and one or more input devices, comprising: An information processing device comprising: means for executing the method according to any one of claims 31 to 53.
64. 1. A method comprising:
1. An electronic device including a display generating component, one or more input devices, and a memory, comprising: While displaying a view of a first application of a plurality of applications stored in the memory, a representation of a first shared content item; a selectable attribute affordance that provides a link to a location within a second application where information identifying the first shared content item was originally shared.
65. obtaining, in the first application, the information identifying the first shared content item in accordance with a determination that the information identifying the first shared content item was initially received from one or more of the plurality of contacts stored in a memory of the electronic device prior to displaying the first shared content item in the first application; 65. The method of claim 64, further comprising:
66. Receiving an input in the first application selecting the selectable attribute affordance; in response to the input, displaying the information identifying the first shared content item at the location within the second application where the information identifying the first shared content item was originally shared; 66. The method of claim 64 or 65, further comprising:
67. The second application is a messaging application including a plurality of messaging conversations, and the information identifying the content item was received in a first messaging conversation of the plurality of messaging conversations, and the method further comprises:
67. The method of claim 66, further comprising, in response to receiving the input selecting the selectable attribute affordance, displaying a portion of a message thread of the first messaging conversation including a previously received message in the first messaging conversation in which the information identifying the first shared content item was originally shared.
68. The second application is a messaging application including a plurality of messaging conversations, and the information identifying the first shared content item was received in one message of a plurality of messages in a first messaging conversation of the plurality of messaging conversations, and the method further comprises:
67. The method of claim 66, further comprising, in response to receiving the input selecting the selectable attribute affordance, displaying the message and a field for replying to the message.
69. 69. The method of claim 67 or 68, wherein the input is a tap.
70. The second application is a messaging application including a plurality of messaging conversations, and the information identifying the first shared content item was received in one message of a plurality of messages in a first messaging conversation of the plurality of messaging conversations, and the method further comprises:
67. The method of claim 66, further comprising: in response to receiving the input selecting the selectable attribute affordance, displaying a set of controls for performing an action related to the first shared content item.
71. 71. The method of claim 70, wherein the set of controls includes a control for replying to the message.
72. 71. The method of claim 70, wherein the set of controls includes a control for removing the representation and the selectable attribute affordance of the first shared content item from display by the first application.
73. 71. The method of claim 70, wherein the set of controls includes controls for listening to or viewing the first shared content item together with one or more other users.
74. The information identifying the first shared content item is received in a first message of the plurality of messages in the first messaging conversation of the plurality of messaging conversations, and displaying the view of the second application includes:
67. The method of claim 66, further comprising displaying a user interface of the first messaging conversation including a message thread of one or more of the plurality of messages and a message input field.
75. 67. The method of claim 66, wherein the view of the first application is a default view that includes a section for shared content, the method further comprising receiving a single input to return to the default view of the first application that includes a section for shared content while displaying the information identifying the first shared content item in the second application.
76. While displaying the view of the first application, a plurality of representations of a plurality of shared content items including a first shared content item; displaying a plurality of selectable attribute affordances providing links to respective locations within the second application where respective information identifying the plurality of shared content items was originally shared; 65. The method of claim 64, further comprising:
77. While displaying the view of the first application, a representation of the second shared content item; and displaying a second selectable attribute affordance providing a link to a location within the second application where information identifying the second shared content item was originally shared; 65. The method of claim 64, further comprising:
78. receiving an input selecting the second selectable attribute affordance; displaying the information identifying the second shared content item at the location within the second application in response to the input; 78. The method of claim 77, further comprising:
79. The second application is a messaging application including a plurality of messaging conversations, and the information identifying the second content item is received in a messaging conversation of the plurality of messaging conversations, and the method includes:
80. The method of claim 78, further comprising, in response to receiving the input selecting the second selectable attribute affordance, displaying a message within the messaging conversation including the information identifying the second shared content item.
80. The view of the first application is a first view, and the method comprises: While displaying a second view of the first application, In accordance with a determination that the first shared content item is a single media file, displaying a first attribute affordance proximate a representation of the single media file, the first attribute affordance indicating that information identifying the single media file as shared content has been received by the second application; 65. The method of claim 64, further comprising: in accordance with a determination that the first shared content item is a collection of media, displaying a second attribute affordance proximate a representation of the collection of media, the second attribute affordance indicating that information identifying the collection of media as shared content has been received by the second application.
81. 81. The method of claim 80, wherein the first attribute affordance is an avatar that overlays the representation of the single media file and the second attribute affordance is an avatar that overlays the representation of the collection of media.
82. 65. The method of claim 64, wherein the first attribute affordance is selectable and provides a link to a location within the second application where information identifying the single media file as shared content was received, and the second attribute affordance is selectable and provides a link to a location within the second application where information identifying the collection of media as shared content was received.
83. 65. The method of claim 64, wherein the selectable attribute affordance is a capsule user interface object, and the selectable attribute affordance is displayed near the representation of the content item.
84. 65. The method of claim 64, wherein the memory stores a plurality of contacts of a user of the electronic device, and the electronic device receives information from the plurality of contacts identifying one or more shared content items.
85. 85. The method of claim 84, wherein the selectable attribute affordance further indicates a number of contacts of the plurality of contacts that included the information identifying the one or more shared content items in one or more messages received by the second application.
86. receiving a first input selecting the selectable attribute; In response to receiving an input selecting the selectable attribute affordance, displaying a disambiguating user interface including a plurality of selectable contact affordances in accordance with a determination that a number of contacts of the plurality of contacts have shared the information identifying the first shared content item, each selectable contact affordance being associated with a distinct one of the number of contacts of the plurality of contacts; 86. The method of claim 85, further comprising:
87. receiving a second input selecting a contact affordance from the plurality of selectable contact affordances, the contact affordance being associated with a particular contact; and displaying a view of the second application including a message sent by the particular contact in response to the second input and including the information identifying the first shared content; 87. The method of claim 86, further comprising:
88. 87. The method of claim 86, wherein each contact affordance of the plurality of selectable contact affordances is displayed as a capsule user interface object that includes an option for sending a message and an option for virtual co-presence communication.
89. 66. The method of claim 65, wherein the selectable attribute affordance further indicates a name of a contact from which the information identifying the first shared content item originated.
90. 66. The method of claim 65, wherein the selectable attribute affordance further presents an avatar representing a contact from which the information identifying the first shared content item originated.
91. displaying an indicator of the number of content items for which information identifying the shared content item has been received by the second application while displaying the view of the first application; 65. The method of claim 64, further comprising:
92. 1. A computer system comprising: a display generation component; one or more input devices; one or more processors; and a memory storing one or more programs, the one or more programs being configured to be executed by the one or more processors, the one or more programs comprising: While displaying a view of a first application of a plurality of applications stored in the memory, a representation of a first shared content item; a selectable attribute affordance that provides a link to a location within a second application where information identifying the first shared content item was originally shared.
93. A computer-readable storage medium having stored thereon one or more programs, the one or more programs comprising instructions that, when executed by a computer system having a display generating component and one or more input devices, cause the device to: While displaying a view of a first application of a plurality of applications stored in the memory, a representation of a first shared content item; a selectable attribute affordance that provides a link to a location within a second application where information identifying the first shared content item was originally shared.
94. 1. A computer system comprising: a display generation component; one or more input devices; While displaying a view of a first application of a plurality of applications stored in the memory, a representation of a first shared content item; a selectable attribute affordance that provides a link to a location within a second application where information identifying the first shared content item was originally shared; and means for enabling the selectable attribute affordance to be displayed.
95. 1. An information processing apparatus for use in a computer system having a display generating component and one or more input devices, comprising: While displaying a view of a first application of a plurality of applications stored in the memory, a representation of a first shared content item; a selectable attribute affordance that provides a link to a location within a second application where information identifying the first shared content item was originally shared; and means for being enabled to display the selectable attribute affordance.
96. 1. A computer system comprising: a display generation component; a touch-sensitive surface; and one or more input devices; one or more processors; and a memory storing one or more programs, the one or more programs being configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any one of claims 64 to 91.
97. A computer readable storage medium having stored thereon one or more programs, the one or more programs including instructions that, when executed by a computer system comprising a display generating component and one or more input devices, cause the device to perform the method of any one of claims 64 to 91.
98. A graphical user interface for a computer system comprising a display generating component, one or more input devices, a memory, and one or more processors executing one or more programs stored in the memory, the graphical user interface comprising a user interface displayed according to the method of any one of claims 64 to 91.
99. 1. A computer system comprising: a display generation component; one or more input devices; A computer system comprising: means for executing the method according to any one of claims 64 to 91.
100. 1. An information processing apparatus for use in a computer system having a display generating component and one or more input devices, comprising: An information processing apparatus comprising: means for executing the method according to any one of claims 64 to 91.
101. 1. A method comprising:
1. An electronic device comprising a display generating component, one or more input devices, and a memory, comprising: displaying a representation of a content item in a first application of the plurality of applications, the content item being of a first type; receiving an input to highlight the representation of the content item while displaying the representation of the content item in the first application; receiving an instruction to display a second application associated with the first type of content; in response to receiving the instruction, displaying a representation of the content item in the second application.
102. 102. The method of claim 101, wherein the first application is not associated with the first type of content and the second application is different from the first application.
103. The first application is a messaging application available on the electronic device, and the method includes, prior to displaying a representation of a content item, 102. The method of claim 101, further comprising receiving the content item by the messaging application.
104. The first application is a messaging application, and the method includes, prior to displaying a representation of the content item, receiving, by the messaging application, information identifying a plurality of content items as shared content, each of the plurality of content items being of the first type; 102. The method of claim 101, further comprising: in response to receiving the information identifying the plurality of content items as shared content, displaying within the second application a representation of the plurality of content items.
105. The representation of the plurality of content items is not marked as highlighted in the second application, and displaying the representation of the content item and the representation of the plurality of content items in the second application includes:
105. The method of claim 104, further comprising: in the second application, displaying the representation of the content item and the representations of the plurality of content items in a dedicated section within the second application, the representation of the highlighted content item being displayed first.
106. Receiving the input highlighting the representation of the content item includes: receiving a selection of the representation of the content item; displaying a control menu including an affordance for highlighting the representation of the content item; receiving a selection of the affordance for highlighting the representation of the content item; 102. The method of claim 101, further comprising: in response to receiving the selection of the affordance to highlight the representation of the content item, displaying an indication that the representation of the content item is highlighted.
107. automatically displaying the highlighted content item and a highlight indicator associated with the content item, the highlight indicator indicating that the content item is highlighted, while displaying a user interface of the second application; 107. The method of claim 106, further comprising:
108. 108. The method of claim 107, wherein the highlighted content item and the highlight indicator are displayed in a dedicated section in the user interface of the second application, the dedicated section displaying other highlighted content items of the first type.
109. The first application is a messaging application, and the method includes, prior to displaying a representation of the content item, receiving, by the messaging application, information identifying the content item as shared content; 102. The method of claim 101, further comprising, in response to receiving the information, not automatically making the content item available for display within the second application.
110. the representation of the content item is displayed in a shared content section of a plurality of sections of the second application; the representation of the content item is displayed in a highlighted section of a plurality of sections of the second application indicating that the content item is highlighted. The method of claim 101.
111. The first application is a messaging application, and the method includes: Receiving a search request having search criteria; In response to receiving the search request, a representation of one or more content items that are not marked as highlighted; and 102. The method of claim 101, further comprising: simultaneously displaying the representation of the content item marked as highlighted, the representation of the content item marked as highlighted appearing more prominent as compared to the representation of one or more content items not marked as highlighted.
112. 112. The method of claim 111, wherein the search request is for content in one of the first application, the second application, or both the first and second applications.
113. The first application is a messaging application, and the method includes: receiving information identifying the content item as shared content in a messaging conversation in the messaging application, the request to share the content item being initiated from a remote messaging application on a remote electronic device; receiving information identifying a plurality of content items as shared content in the messaging conversation, each of the plurality of content items being of the first type; in response to receiving the information identifying the plurality of content items as shared content, not automatically making the plurality of content items available for display within the second application; receiving additional input for highlighting the representation of the content item; 102. The method of claim 101, further comprising, in response to the additional input, marking the content item as highlighted and making the content item available for display in the second application.
114. The first application is a messaging application, and the information identifying the content item as shared content is received in a first messaging conversation of a plurality of messaging conversations in the messaging application, and the method includes: receiving an additional input for displaying information about the first messaging conversation; 102. The method of claim 101, further comprising: displaying information about the first messaging conversation including an indication that the representation of the content item was highlighted.
115. the first application is a messaging application available on the electronic device, and the input for selecting the representation of the content item is a first input, and the method further comprises: receiving, by the messaging application, information identifying the content item as shared content, wherein a request to share the content item is initiated from a remote messaging application on a remote electronic device; receiving a second input directed to the control for highlighting the content item in the second application; 102. The method of claim 101, further comprising: in response to the second input, marking the content item as highlighted and making the content item available in the second application.
116. In response to receiving said input, 102. The method of claim 101, further comprising displaying a set of controls including the control for highlighting the content item.
117. 102. The method of claim 101, wherein the second application is a music application, a photo application, or a video application.
118. 102. The method of claim 101, wherein highlighting the representation of the content item in the first application includes marking the representation in the first application to indicate that the content item is highlighted.
119. 1. A computer system comprising: a display generation component; one or more input devices; one or more processors; and a memory storing one or more programs, the one or more programs being configured to be executed by the one or more processors, the one or more programs comprising: Displaying a representation of a content item in a first application of the plurality of applications, the content item being of a first type; receiving an input highlighting the representation of the content item while displaying the representation of the content item in the first application; receiving an instruction to display a second application associated with the first type of content; A computer system comprising instructions for, in response to receiving the instruction, displaying a representation of the content item in the second application.
120. A computer-readable storage medium having stored thereon one or more programs, the one or more programs comprising instructions that, when executed by a computer system having a display generating component and one or more input devices, cause the device to: Displaying a representation of the content item in a first application of the plurality of applications, the content item being of a first type; receiving an input to highlight the representation of the content item while displaying the representation of the content item in the first application; receiving instructions to display a second application associated with the first type of content; In response to receiving the instruction, a computer-readable storage medium causes a representation of the content item to be displayed in the second application.
121. 1. A computer system comprising: a display generation component; one or more input devices; means for displaying a representation of a content item in a first application of the plurality of applications, the content item being of a first type; means enabled for receiving input to highlight the representation of the content item while displaying the representation of the content item in the first application; means for receiving an instruction to display a second application associated with the first type of content; and means enabled for, in response to receiving the instruction, displaying a representation of the content item in the second application.
122. 1. An information processing apparatus for use in a computer system having a display generating component and one or more input devices, comprising: means for displaying a representation of a content item in a first application of the plurality of applications, the content item being of a first type; means enabled for receiving input to highlight the representation of the content item while displaying the representation of the content item in the first application; means for receiving an instruction to display a second application associated with the first type of content; and means enabled for, in response to receiving the instruction, displaying a representation of the content item in the second application.
123. 1. A computer system comprising: a display generation component; a touch-sensitive surface; and one or more input devices; one or more processors; A computer system comprising: a memory having stored therein one or more programs, the one or more programs being configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any one of claims 101 to 118.
124. A computer readable storage medium having stored thereon one or more programs, the one or more programs including instructions that, when executed by a computer system including a display generating component and one or more input devices, cause the device to perform the method of any one of claims 101 to 118.
125. A graphical user interface for a computer system comprising a display generating component, one or more input devices, a memory, and one or more processors executing one or more programs stored in the memory, the graphical user interface comprising a user interface displayed according to the method of any one of claims 101 to 118.
126. 1. A computer system comprising: a display generation component; one or more input devices; A computer system comprising: means for executing the method according to any one of claims 101 to 118.
127. 1. An information processing apparatus for use in a computer system having a display generating component and one or more input devices, comprising: An information processing device comprising: means for executing a method according to any one of claims 101 to 118.
Citation Information
Patent Citations
Technologies for sharing and remixing media via messaging systems
JP2018514025A
Private messaging via content provider web sites and applications
US20150172250A1
Device, Method, and Graphical User Interface for Sharing Content from a Respective Application
US20190073102A1
Preloading of application on a user device based on content received by the user device
WO2020096776A1