Shared Content Session User Interface
By detecting input requests and outputting notifications in a computer system, fast and efficient shared content session management is achieved, and the complex and time-consuming problems of user interface in the prior art are solved, thereby improving user experience and device energy efficiency.
Patent Information
- Application Number
- JP2024173274
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2022-04-28
- Filing Date
- 2024-10-02
- Publication Date
- 2025-03-25
- Estimated Expiration
- 2042-05-13
AI Technical Summary
Prior art The user interface is complex and time consuming when managing shared content sessions, especially in battery-powered devices, resulting in waste of energy and a decline in user experience.
Fast and efficient shared content session management is achieved by detecting input requests and outputting notifications in a computer system. This method allows the computer system to independently output personalized content while the external system outputs content and optimizes the user interface to reduce input steps.
Improves the efficiency and user experience of shared content session management, reduces user operation time and device energy consumption, and extends battery life in battery-powered devices.
Smart Images

Figure 0007651050000001 
Figure 0007651050000002 
Figure 0007651050000003
Abstract
Description
[Technical Field]
[0001] (CROSS-REFERENCE TO RELATED APPLICATIONS) This application is a continuation of U.S. Provisional Patent Application No. 63 / 189,156 entitled "SHARED-CONTENT SESSION USER INTERFACES," filed on May 15, 2021; U.S. Provisional Patent Application No. 63 / 197,445 entitled "SHARED-CONTENT SESSION USER INTERFACES," filed on June 6, 2021; U.S. Provisional Patent Application No. 63 / 302,511 entitled "SHARED-CONTENT SESSION USER INTERFACES," filed on January 24, 2022; U.S. Provisional Patent Application No. 17 / 483,542 entitled "SHARED-CONTENT SESSION USER INTERFACES," filed on September 23, 2021; No. 17 / 483,564 entitled "SHARED-CONTENT SESSION USER INTERFACES," filed September 23, 2021; U.S. patent application Ser. No. 17 / 483,549 entitled "SHARED-CONTENT SESSION USER INTERFACES," filed September 23, 2021; U.S. patent application Ser. No. 17 / 483,679 entitled "SHARED-CONTENT SESSION USER INTERFACES," filed September 23, 2021; U.S. patent application Ser. No. 17 / 483,582 entitled "SHARED-CONTENT SESSION USER INTERFACES," filed September 23, 2021; U.S. patent application Ser. No. 17 / 484,899 entitled "SHARED-CONTENT SESSION USER INTERFACES," filed September 24, 2021; and U.S. patent application Ser. No. 17 / 484,899 entitled "SHARED-CONTENT SESSION USER INTERFACES," filed April 28, 2022. This application claims the benefit of priority to U.S. patent application Ser. No. 17 / 732,204, entitled "Interfaces," the contents of which are incorporated herein by reference in their entireties.
[0002] TECHNICAL FIELD The present disclosure relates generally to computer user interfaces, and more particularly to techniques for managing shared content sessions. [Background technology]
[0003] The computer system may include hardware and / or software for displaying interfaces for various types of communication and information sharing. Summary of the Invention
[0004] Some techniques for communicating and sharing information using electronic devices are generally cumbersome and inefficient. For example, some existing techniques use complex and time-consuming user interfaces that may involve multiple key presses or strokes. Existing techniques take more time than necessary, wasting the user's time and the device's energy. This latter consideration is particularly important in battery-operated devices.
[0005] The present technology provides electronic devices with faster and more efficient methods and interfaces for managing shared content sessions. Such methods and interfaces optionally complement or replace other methods for managing shared content sessions. Such methods and interfaces reduce the cognitive burden on users and create a more efficient human-machine interface. For battery-operated computing devices, such methods and interfaces conserve power and extend the time between battery charges.
[0006] According to some embodiments, a method is described. The method is executed on a computer system in communication with one or more output generating components and one or more input devices. The method includes detecting, via the one or more input devices, a first set of one or more inputs corresponding to a request to output content. In response to detecting the first set of one or more inputs corresponding to the request to output content, in accordance with determining that an active shared content session exists between the computer system and an external computer system, the shared content session, when active, allowing the computer system to output individual content while the individual content is being output by the external computer system, outputting, via an output generating component of the one or more output generating components, a first notification including an indication that the content will be output by the external computer system when the content is output by the computer system, and outputting the content via the output generating component of the one or more output generating components.
[0007] According to some embodiments, a non-transitory computer-readable storage medium is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generating components and one or more input devices, the one or more programs including instructions to: detect, via the one or more input devices, a first set of one or more inputs corresponding to a request to output content; and, in response to detecting the first set of one or more inputs corresponding to the request to output content, output, via an output generating component of the one or more output generating components, a first notification including an indication that content will be output by the external computer system when the content is output by the computer system, in accordance with determining that an active shared content session exists between the computer system and an external computer system, the shared content session, when active, allowing the computer system to output individual content while the external computer system is outputting individual content; and output the content via an output generating component of the one or more output generating components.
[0008] According to some embodiments, a temporary computer-readable storage medium is described. The temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generating components and one or more input devices, the one or more programs including instructions for detecting, via the one or more input devices, a first set of one or more inputs corresponding to a request to output content, and in response to detecting the first set of one or more inputs corresponding to the request to output content, outputting, via an output generating component of the one or more output generating components, a first notification including an indication that content will be output by the external computer system when the content is output by the computer system, in accordance with determining that an active shared content session exists between the computer system and an external computer system, the shared content session, when active, allowing the computer system to output individual content while individual content is being output by the external computer system, and outputting the content via an output generating component of the one or more output generating components.
[0009] According to some embodiments, a computer system is described that is configured to communicate with one or more output generating components and one or more input devices. The computer system includes one or more processors and a memory that stores one or more programs configured to be executed by the one or more processors, the one or more programs including instructions to: detect, via the one or more input devices, a first set of one or more inputs corresponding to a request to output content; and, in response to detecting the first set of one or more inputs corresponding to the request to output content, output, via an output generating component of the one or more output generating components, a first notification including an indication that content will be output by the external computer system when the content is output by the computer system in accordance with determining that an active shared content session exists between the computer system and an external computer system, the shared content session enabling instructions for the computer system to output the individual content while the individual content is being output by the external computer system when the shared content session is active; and output the content via the output generating component of the one or more output generating components.
[0010] According to some embodiments, a computer system is described. The computer system is configured to communicate with one or more output generating components and one or more input devices. The computer system comprises: means for detecting, via the one or more input devices, a first set of one or more inputs corresponding to a request to output content; and means for, in response to detecting the first set of one or more inputs corresponding to the request to output content, outputting, via the output generating component of the one or more output generating components, a first notification including an indication that content will be output by the external computer system when the content is output by the computer system in accordance with a determination that an active shared content session exists between the computer system and an external computer system, the shared content session, when active, allowing the computer system to output individual content while the external computer system is outputting individual content, and outputting the content via the output generating component of the one or more output generating components.
[0011] According to some embodiments, a computer program product is described, the computer program product including one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generating components and one or more input devices, the one or more programs including instructions for detecting, via the one or more input devices, a first set of one or more inputs corresponding to a request to output content, and in response to detecting the first set of one or more inputs corresponding to the request to output content, outputting, via an output generating component of the one or more output generating components, a first notification including an indication that content will be output by the external computer system when the content is output by the computer system in accordance with determining that an active shared content session exists between the computer system and an external computer system, the shared content session, when active, allowing the computer system to output individual content while individual content is being output by the external computer system, and outputting the content via the output generating component of the one or more output generating components.
[0012] According to some embodiments, a method is described that is executed on a computer system in communication with one or more output generating components and one or more input devices. The method includes receiving, while displaying a first user interface via an output generating component of the one or more output generating components during an active shared content session between the computer system and an external computer system, an indication that first content, the first content associated with a first application on the computer system, has been selected for the shared content session at the external computer system; outputting, in response to receiving the indication that the first content has been selected for the shared content session, via the output generating component of the one or more output generating components, a first notification generated by a second application different from the first application associated with the first content; and, after outputting the first notification, outputting, while the active shared content session between the computer system and the external computer system, the first content using the first application associated with the first content via the output generating component of the one or more output generating components.
[0013] According to some embodiments, a non-transitory computer-readable storage medium is described, the non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generating components and one or more input devices, the one or more programs including instructions to: receive, via an output generating component of the one or more output generating components, while displaying a first user interface during an active shared content session between the computer system and an external computer system, an indication that first content has been selected for the shared content session at the external computer system, the first content being associated with a first application on the computer system; output, via the output generating component of the one or more output generating components, a first notification generated by a second application different from the first application associated with the first content, during the active shared content session between the computer system and the external computer system, after outputting the first notification;
[0014] According to some embodiments, a temporary computer-readable storage medium is described, the temporary computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generating components and one or more input devices, the one or more programs including instructions for: receiving, via an output generating component of the one or more output generating components, an indication that first content has been selected for the shared content session at the external computer system while displaying a first user interface during an active shared content session between the computer system and an external computer system, the first content being associated with a first application on the computer system; outputting, via the output generating component of the one or more output generating components, a first notification generated by a second application different from the first application associated with the first content during the active shared content session between the computer system and the external computer system after outputting the first notification;
[0015] According to some embodiments, a computer system configured to communicate with one or more output generating components and one or more input devices is described, the computer system comprising one or more processors and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions to: receive, via an output generating component of the one or more output generating components, while displaying a first user interface during an active shared content session between the computer system and an external computer system, an indication that first content has been selected for the shared content session at the external computer system, the first content being associated with a first application on the computer system; output, via the output generating component of the one or more output generating components, a first notification generated by a second application different from the first application associated with the first content, during the active shared content session between the computer system and the external computer system after outputting the first notification.
[0016] According to some embodiments, a computer system configured to communicate with one or more output generating components and one or more input devices is described, the computer system comprising: means for receiving, while displaying a first user interface via an output generating component of the one or more output generating components during an active shared content session between the computer system and an external computer system, an indication that first content, the first content being associated with a first application on the computer system, has been selected for the shared content session at the external computer system; and, in response to receiving the indication that the first content has been selected for the shared content session, outputting, via the output generating component of the one or more output generating components, a first notification generated by a second application different from the first application associated with the first content; and means for outputting, after outputting the first notification, the first content using the first application associated with the first content via the output generating component of the one or more output generating components during the active shared content session between the computer system and the external computer system.
[0017] According to some embodiments, a computer program product is described, the computer program product including one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generating components and one or more input devices, the one or more programs including instructions for: receiving, via an output generating component of the one or more output generating components, while displaying a first user interface during an active shared content session between the computer system and an external computer system, an indication that first content has been selected for the shared content session at the external computer system, the first content being associated with a first application on the computer system; outputting, via the output generating component of the one or more output generating components, a first notification generated by a second application different from the first application associated with the first content during the active shared content session between the computer system and the external computer system after outputting the first notification;
[0018] According to some embodiments, a method is described. The method is executed on a computer system in communication with one or more output generation components and one or more input devices. The method includes receiving, via the one or more input devices, input corresponding to a request to add first content to a shared content session between the computer system and an external computer system. In response to receiving the input, in accordance with a determination that the first content is a first type of content and before adding the first content to the shared content session, outputting an alert that the first content will be added to the shared content session, the alert including an option to cancel adding the first content to the shared content session before the first content is added to the shared content session; and in accordance with a determination that the first content is a second type of content different from the first type, adding the first content to the shared content session without outputting the alert that the first content will be added to the shared content session before the first content is added to the shared content session.
[0019] According to some embodiments, a non-transitory computer-readable storage medium is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for receiving, via the one or more input devices, an input corresponding to a request to add first content to a shared content session between the computer system and an external computer system, and, in response to receiving the input, in accordance with a determination that the first content is a first type of content, before adding the first content to the shared content session, output an alert that the first content will be added to the shared content session, the alert including an option to cancel adding the first content to the shared content session before the first content is added to the shared content session, and in accordance with a determination that the first content is a second type of content different from the first type, add the first content to the shared content session without outputting the alert indicating adding the first content to the shared content session before the first content is added to the shared content session.
[0020] According to some embodiments, a temporary computer-readable storage medium is described. The temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions to receive, via the one or more input devices, an input corresponding to a request to add first content to a shared content session between the computer system and an external computer system, and, in response to receiving the input, in accordance with a determination that the first content is a first type of content and before adding the first content to the shared content session, output an alert that the first content will be added to the shared content session, the alert including an option to cancel adding the first content to the shared content session before the first content is added to the shared content session, and in accordance with a determination that the first content is a second type of content different from the first type, add the first content to the shared content session without outputting the alert indicating adding the first content to the shared content session before the first content is added to the shared content session.
[0021] According to some embodiments, a computer system is described. The computer system is configured to communicate with one or more output generation components and one or more input devices. The computer system includes one or more processors and a memory storing one or more programs configured to be executed by the one or more processors. The one or more programs include instructions to receive, via the one or more input devices, an input corresponding to a request to add first content to a shared content session between the computer system and an external computer system, and, in response to receiving the input, output an alert that the first content will be added to the shared content session in accordance with a determination that the first content is a first type of content and before adding the first content to the shared content session, the alert including an option to cancel adding the first content to the shared content session before the first content is added to the shared content session; and, in accordance with a determination that the first content is a second type of content different from the first type, add the first content to the shared content session without outputting an alert indicating that the first content will be added to the shared content session before the first content is added to the shared content session.
[0022] According to some embodiments, a computer system is described. The computer system is configured to communicate with one or more output generation components and one or more input devices. The computer system includes: means for receiving, via the one or more input devices, an input corresponding to a request to add first content to a shared content session between the computer system and an external computer system; and means for, in response to receiving the input, outputting an alert that the first content will be added to the shared content session before adding the first content in accordance with a determination that the first content is a first type of content, the alert including an option to cancel adding the first content to the shared content session before the first content is added to the shared content session; and means for adding the first content to the shared content session without outputting the alert that the first content will be added to the shared content session in accordance with a determination that the first content is a second type of content different from the first type.
[0023] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for receiving, via the one or more input devices, input corresponding to a request to add first content to a shared content session between the computer system and an external computer system, and, in response to receiving the input, outputting an alert that the first content will be added to the shared content session in accordance with a determination that the first content is a first type of content and before adding the first content to the shared content session, the alert including an option to cancel adding the first content to the shared content session in accordance with a determination that the first content is a second type of content different from the first type in accordance with a determination that the first content is a second type of content different from the first type in accordance with a determination that the first content will be added to the shared content session in accordance with a determination that the first content is a second type of content different from the first type in accordance with a determination that the first content will be added to the shared content session without outputting the alert indicating that the first content will be added to the shared content session in accordance with a determination that the first content is a second type of content different from the first type in accordance with a determination ... will be added to the shared content session in accordance with a determination that the first content is a second type of content different from the first type in accordance with a determination that the first content will be added to the shared content
[0024] According to some embodiments, a method is described. The method is executed on a computer system in communication with one or more output generating components and one or more input devices. The method includes receiving, via the one or more input devices, input corresponding to a request to display a first user interface of a first application. In response to receiving the input, a shared content session between the computer system and an external computer system, the shared content session, when active, enabling the computer system to output individual content while the individual content is being output by the external computer system. If the shared content session is active and the first application is capable of playing content that can be added to the shared content session, in accordance with a determination that a first set of criteria is met, outputting, via one of the one or more output generating components, an indication that the first application can play content that can be added to the shared content session and outputting the first user interface for the first application. In accordance with a determination that the first set of criteria is not met, outputting the first user interface for the first application without outputting an indication that the first application can play content that can be added to the shared content session.
[0025] According to some embodiments, a non-transitory computer-readable storage medium is described. A non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions to receive, via the one or more input devices, an input corresponding to a request to display a first user interface of a first application; and in response to receiving the input, a shared content session between the computer system and an external computer system, the shared content session, when active, allowing the computer system to output individual content while the individual content is being output by the external computer system; if the shared content session is active and the first application is able to play content that can be added to the shared content session, in accordance with a determination that a first set of criteria is met, output, via one of the one or more output generation components, an indication that the first application can play content that can be added to the shared content session and output the first user interface for the first application; and in accordance with a determination that the first set of criteria is not met, output the first user interface for the first application without outputting an indication that the first application can play content that can be added to the shared content session.
[0026] According to some embodiments, a temporary computer-readable storage medium is described. A temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions to receive, via the one or more input devices, an input corresponding to a request to display a first user interface of a first application; and in response to receiving the input, a shared content session between the computer system and an external computer system, the shared content session, when active, allowing the computer system to output individual content while the individual content is being output by the external computer system; if the shared content session is active and the first application is able to play content that can be added to the shared content session, in accordance with a determination that a first set of criteria is met, output, via one of the one or more output generation components, an indication that the first application can play content that can be added to the shared content session and output the first user interface for the first application; and in accordance with a determination that the first set of criteria is not met, output the first user interface for the first application without outputting an indication that the first application can play content that can be added to the shared content session.
[0027] According to some embodiments, a computer system is described that is configured to communicate with one or more output generation components and one or more input devices. The computer system comprises one or more processors, one or more programs configured to be executed by the one or more processors, and a memory storing the one or more programs, wherein the one or more programs receive, via one or more input devices, input corresponding to a request to display a first user interface of a first application; and in response to receiving the input, generate a shared content session between the computer system and an external computer system, the shared content session, when active, allowing the computer system to output individual content while the individual content is being output by the external computer system; when the shared content session is active and the first application is able to play content that can be added to the shared content session, in accordance with a determination that a first set of criteria is met, output, via one output generation component of the one or more output generation components, an indication that the first application can play content that can be added to the shared content session and output the first user interface for the first application; and in accordance with a determination that the first set of criteria is not met, output the first user interface for the first application without outputting an indication that the first application can play content that can be added to the shared content session.
[0028] According to some embodiments, a computer system is described. The computer system is configured to communicate with one or more output generating components and one or more input devices. The computer system includes: means for receiving, via the one or more input devices, an input corresponding to a request to display a first user interface of a first application; and means for, in response to receiving the input, a shared content session between the computer system and an external computer system, the shared content session, when active, allowing the computer system to output individual content while the individual content is being output by the external computer system; and means for, in accordance with a determination that a first set of criteria is met when the shared content session is active and the first application is capable of playing content that can be added to the shared content session, outputting, via one of the one or more output generating components, an indication that the first application is capable of playing content that can be added to the shared content session and outputting the first user interface for the first application; and, in accordance with a determination that the first set of criteria is not met, outputting the first user interface for the first application without outputting an indication that the first application is capable of playing content that can be added to the shared content session.
[0029] According to some embodiments, a computer program product is described, the computer program product comprising one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for receiving, via the one or more input devices, an input corresponding to a request to display a first user interface of a first application, and in response to receiving the input, a shared content session between the computer system and an external computer system, the shared content session, when active, enabling the computer system to output individual content while the individual content is being output by the external computer system, outputting, via one of the one or more output generation components, an indication that the first application can play content that can be added to the shared content session and outputting the first user interface for the first application, in accordance with a determination that a first set of criteria is met when the shared content session is active and the first application can play content that can be added to the shared content session, and outputting the first user interface for the first application, and in accordance with a determination that the first set of criteria is not met, outputting the first user interface for the first application without outputting an indication that the first application can play content that can be added to the shared content session.
[0030] According to some embodiments, a method is described. The method is executed at a computer system in communication with one or more output generation components and one or more input devices. The method includes receiving first data associated with a request to add first content to a shared content session between an external computer system and the computer system; in response to receiving the first data associated with the request to add the first content to the shared content session, outputting the first content via an output generating component of the one or more output generating components in accordance with a determination that content output criteria based on whether the content is available to be output in a predetermined manner by the computer system are met; and in accordance with a determination that the content output criteria are not met, outputting a notification via an output generating component of the one or more output generating components that the first content has been added to the shared content session without outputting the first content at the computer system.
[0031] According to some embodiments, a non-transitory computer-readable storage medium is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions to receive first data associated with a request to add first content to a shared content session between an external computer system and the computer system, output the first content via an output generation component of the one or more output generation components in response to receiving the first data associated with the request to add the first content to the shared content session in accordance with a determination that content output criteria based on whether the content is available to be output in a predetermined manner by the computer system are met, and output a notification that the first content has been added to the shared content session via an output generation component of the one or more output generation components without outputting the first content at the computer system in accordance with a determination that the content output criteria are not met.
[0032] According to some embodiments, a temporary computer-readable storage medium is described, the temporary computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions to receive first data associated with a request to add first content to a shared content session between an external computer system and the computer system, output the first content via an output generation component of the one or more output generation components in response to receiving the first data associated with the request to add the first content to the shared content session in accordance with a determination that content output criteria based on whether the content is available to be output in a predetermined manner by the computer system are satisfied, and output a notification that the first content has been added to the shared content session via an output generation component of the one or more output generation components without outputting the first content at the computer system in accordance with a determination that the content output criteria are not satisfied.
[0033] According to some embodiments, a computer system is described. The computer system is configured to communicate with one or more output generation components and one or more input devices. The computer system includes one or more processors and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions to receive first data associated with a request to add first content to a shared content session between an external computer system and the computer system, and, in response to receiving the first data associated with the request to add the first content to the shared content session, output the first content via an output generation component of the one or more output generation components in accordance with a determination that content output criteria based on whether the content is available to be output in a predetermined manner by the computer system are met, and, in accordance with a determination that the content output criteria are not met, output a notification that the first content has been added to the shared content session without outputting the first content via an output generation component of the one or more output generation components at the computer system.
[0034] According to some embodiments, a computer system is described. The computer system is configured to communicate with one or more output generation components and one or more input devices. The computer system includes: means for receiving first data associated with a request to add first content to a shared content session between an external computer system and the computer system; and means for, in response to receiving the first data associated with the request to add the first content to the shared content session, outputting the first content via an output generation component of the one or more output generation components in accordance with a determination that content output criteria are met based on whether the content is available to be output by the computer system in a predetermined manner; and for outputting, via an output generation component of the one or more output generation components, a notification that the first content has been added to the shared content session without outputting the first content at the computer system in accordance with a determination that the content output criteria are not met.
[0035] According to some embodiments, a computer program product is described, the computer program product including one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions to receive first data associated with a request to add first content to a shared content session between an external computer system and the computer system, output the first content via an output generating component of the one or more output generating components in response to receiving the first data associated with the request to add the first content to the shared content session in accordance with a determination that content output criteria based on whether the content is available to be output in a predetermined manner by the computer system are met, and output a notification that the first content has been added to the shared content session without outputting the first content at the computer system in accordance with a determination that the content output criteria are not met via an output generating component of the one or more output generating components.
[0036] According to some embodiments, a method is described that is executed on a computer system in communication with one or more output generation components and one or more input devices. The method includes simultaneously displaying, via one of the one or more output generation components, a messaging interface for the individual message conversation, the messaging interface including simultaneously displaying a message display area for the individual message conversation between two or more participants in the individual message conversation, the message display area including a plurality of messages from different participants to other participants in the message conversation, and a graphical representation of an ongoing shared content session with one or more participants in the message conversation, the graphical representation of the ongoing shared content session including first information regarding one or more parameters of the shared content session, including content of the shared content session and participant status of the shared content session; receiving a request to display a portion of the individual message conversation including a graphical representation of the shared content session after indicating that the shared content session has been shared and after one or more parameters of the ongoing shared content session have changed; and in response to receiving the request to display the portion of the individual message conversation including the graphical representation of the shared content session, displaying multiple messages from different participants in the message conversation to other participants along with an updated graphical representation of the ongoing shared content session including second information regarding one or more parameters of the shared content session that differs from the first information, including different content in the shared content session and / or different participant statuses in the shared content session.
[0037] According to some embodiments, a non-transitory computer-readable storage medium is described, the non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs simultaneously displaying, via one of the one or more output generation components, a message display area of an individual message conversation between two or more participants of the individual message conversation, the individual message conversation including a plurality of messages from different participants to other participants of the message conversation, and a graphical representation of an ongoing shared content session with one or more participants of the message conversation, the graphical representation of the ongoing shared content session including first information regarding one or more parameters of the shared content session, including content in the shared content session and participant status in the shared content session. displaying a messaging interface for the individual message conversation, including receiving a request to display a portion of the individual message conversation including a graphical representation of the shared content session after displaying the messaging interface and after one or more parameters of the ongoing shared content session have changed; and in response to receiving the request to display the portion of the individual message conversation including the graphical representation of the shared content session, displaying multiple messages from different participants in the message conversation to other participants along with an updated graphical representation of the ongoing shared content session including second information regarding one or more parameters of the shared content session that differs from the first information, including different content in the shared content session and / or different participant statuses in the shared content session.
[0038] According to some embodiments, a temporary computer-readable storage medium is described, the temporary computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs simultaneously displaying, via one of the one or more output generation components, a message display area of an individual message conversation between two or more participants of the individual message conversation, the individual message conversation including a plurality of messages from different participants to other participants of the message conversation, and a graphical representation of an ongoing shared content session with one or more participants of the message conversation, the graphical representation of the ongoing shared content session including first information regarding one or more parameters of the shared content session, including content in the shared content session and participant status in the shared content session. displaying a messaging interface for the individual message conversation, including receiving a request to display a portion of the individual message conversation including a graphical representation of the shared content session after displaying the messaging interface and after one or more parameters of the ongoing shared content session have changed; and in response to receiving the request to display the portion of the individual message conversation including the graphical representation of the shared content session, displaying multiple messages from different participants in the message conversation to other participants along with an updated graphical representation of the ongoing shared content session including second information regarding one or more parameters of the shared content session that differs from the first information, including different content in the shared content session and / or different participant statuses in the shared content session.
[0039] According to some embodiments, a computer system is described that is configured to communicate with one or more output generation components and one or more input devices. The computer system includes one or more processors and a memory that stores one or more programs configured to be executed by the one or more processors, the one or more programs including simultaneously displaying, via the output generation components of the one or more output generation components, a message display area for an individual message conversation between two or more participants of the individual message conversation, the message display area including a plurality of messages from different participants of the message conversation to other participants, and a graphical representation of an ongoing shared content session with one or more participants of the message conversation, the graphical representation of the ongoing shared content session including first information about one or more parameters of the shared content session, including content within the shared content session and participant status within the shared content session. the instructions include: displaying a messaging interface; after displaying the messaging interface and after one or more parameters of the ongoing shared content session have changed, receiving a request to display a portion of the individual message conversation including a graphical representation of the shared content session; and in response to receiving the request to display the portion of the individual message conversation including the graphical representation of the shared content session, displaying multiple messages from different participants in the message conversation to other participants along with an updated graphical representation of the ongoing shared content session including second information regarding one or more parameters of the shared content session that differs from the first information, including different content in the shared content session and / or different participant statuses in the shared content session.
[0040] According to some embodiments, a computer system is described that is configured to communicate with one or more output generation components and one or more input devices. The computer system comprises: means for displaying, via an output generation component of the one or more output generation components, a messaging interface for the individual message conversation, the messaging interface including simultaneously displaying a message display area for an individual message conversation between two or more participants in the individual message conversation, the message display area including a plurality of messages from different participants in the message conversation to other participants, and a graphical representation of an ongoing shared content session with one or more participants in the message conversation, the graphical representation of the ongoing shared content session including first information regarding one or more parameters of the shared content session including content in the shared content session and participant status in the shared content session; means for receiving, after displaying the messaging interface, a request to display a portion of the individual message conversation including the graphical representation of the shared content session after one or more parameters of the ongoing shared content session have been changed; and means for displaying, in response to receiving the request to display the portion of the individual message conversation including the graphical representation of the shared content session, the plurality of messages from different participants to other participants in the message conversation along with an updated graphical representation of the ongoing shared content session including second information regarding one or more parameters of the shared content session that differs from the first information, including different content in the shared content session and / or different participant status in the shared content session.
[0041] According to some embodiments, a computer program product is described, the computer program product comprising one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs simultaneously displaying, via one of the one or more output generation components, a message display area of an individual message conversation between two or more participants of the individual message conversation, the individual message conversation including a plurality of messages from different participants to other participants of the message conversation, and a graphical representation of an ongoing shared content session with one or more participants of the message conversation, the graphical representation of the ongoing shared content session including first information regarding one or more parameters of the shared content session, including content in the shared content session and participant status in the shared content session. displaying a messaging interface for the individual message conversation, including receiving a request to display a portion of the individual message conversation including a graphical representation of the shared content session after displaying the messaging interface and after one or more parameters of the ongoing shared content session have changed; and in response to receiving the request to display the portion of the individual message conversation including the graphical representation of the shared content session, displaying multiple messages from different participants in the message conversation to other participants along with an updated graphical representation of the ongoing shared content session including second information regarding one or more parameters of the shared content session that differs from the first information, including different content in the shared content session and / or different participant statuses in the shared content session.
[0042] According to some embodiments, a method is described. The method is executed on a computer system in communication with one or more output generating components and one or more input devices. The method includes, while a shared content session between the computer system and one or more external computer systems is active, receiving, via the one or more input devices, a request to display information associated with the shared content session; in response to receiving the request to display the information associated with the shared content session, displaying, via the output generating components of the one or more output generating components, an indication of one or more participants of the shared content session and one or more users invited to the shared content session but not participating in the shared content session; in accordance with a determination that the shared content session includes first content, displaying, via the output generating components of the one or more output generating components, a representation of the first content; and in accordance with a determination that the shared content session includes second content different from the first content, displaying, via the output generating components of the one or more output generating components, a representation of second content different from the representation of the first content.
[0043] According to some embodiments, a non-transitory computer-readable storage medium is described, wherein the non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generating components and one or more input devices, the one or more programs including instructions for receiving, while a shared content session between the computer system and one or more external computer systems is active, a request via the one or more input devices to display information associated with the shared content session, displaying, via the output generating components of the one or more output generating components, an indication of one or more participants in the shared content session and one or more users invited to the shared content session but not participating in the shared content session in response to receiving the request to display the information associated with the shared content session, displaying, via the output generating components of the one or more output generating components, a representation of the first content in accordance with a determination that the shared content session includes first content, and displaying, via the output generating components of the one or more output generating components, a representation of second content different from the representation of the first content in accordance with a determination that the shared content session includes second content different from the first content.
[0044] According to some embodiments, a temporary computer-readable storage medium is described, the temporary computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generating components and one or more input devices, the one or more programs including instructions for receiving, while a shared content session between the computer system and one or more external computer systems is active, a request via the one or more input devices to display information associated with the shared content session, displaying, via an output generating component of the one or more output generating components, an indication of one or more participants in the shared content session and one or more users invited to the shared content session but not participating in the shared content session in response to receiving the request to display the information associated with the shared content session, displaying, via an output generating component of the one or more output generating components, a representation of the first content in accordance with a determination that the shared content session includes first content, and displaying, via an output generating component of the one or more output generating components, a representation of second content different from the representation of the first content in accordance with a determination that the shared content session includes second content different from the first content.
[0045] According to some embodiments, a computer system is described that is configured to communicate with one or more output generation components and one or more input devices. The computer system includes one or more processors and a memory that stores one or more programs configured to be executed by the one or more processors, the one or more programs including instructions to: receive, via the one or more input devices, a request to display information associated with the shared content session while a shared content session between the computer system and one or more external computer systems is active; in response to receiving the request to display the information associated with the shared content session, display, via an output generating component of the one or more output generating components, an indication of one or more participants in the shared content session and one or more users that have been invited to the shared content session but have not joined the shared content session; in accordance with a determination that the shared content session includes first content, display, via an output generating component of the one or more output generating components, a representation of the first content; and in accordance with a determination that the shared content session includes second content that is different from the first content, display, via an output generating component of the one or more output generating components, a representation of second content that is different from the representation of the first content.
[0046] According to some embodiments, a computer system is described. The computer system is configured to communicate with one or more output generating components and one or more input devices. The computer system comprises means for receiving, while a shared content session between the computer system and one or more external computer systems is active, a request to display information associated with the shared content session via the one or more input devices; in response to receiving the request to display the information associated with the shared content session, displaying, via an output generating component of the one or more output generating components, an indication of one or more participants in the shared content session and one or more users invited to the shared content session but not participating in the shared content session; in accordance with a determination that the shared content session includes first content, displaying, via an output generating component of the one or more output generating components, a representation of the first content; and in accordance with a determination that the shared content session includes second content different from the first content, displaying, via an output generating component of the one or more output generating components, a representation of second content different from the representation of the first content.
[0047] According to some embodiments, a computer program product is described, the computer program product including one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generating components and one or more input devices, the one or more programs including instructions for receiving, while a shared content session between the computer system and one or more external computer systems is active, a request via the one or more input devices to display information associated with the shared content session, displaying, via an output generating component of the one or more output generating components, an indication of one or more participants in the shared content session and one or more users invited to the shared content session but not participating in the shared content session in response to receiving the request to display the information associated with the shared content session, displaying, via an output generating component of the one or more output generating components, a representation of the first content in accordance with a determination that the shared content session includes first content, and displaying, via an output generating component of the one or more output generating components, a representation of second content different from the representation of the first content in accordance with a determination that the shared content session includes second content different from the first content.
[0048] According to some embodiments, a method is described that is executed in a computer system in communication with one or more output generation components and one or more input devices. The method includes: receiving, while a shared content session between the computer system and one or more external computer systems, the shared content session, when active, allowing the computer system to output individual content while individual content is being output by the one or more external computer systems, and while the shared content session is active and multiple application interface areas, including at least a portion of a first application interface area and at least a portion of a second application interface area, are simultaneously displayed within a user interface, a set of one or more inputs corresponding to a request to add an application interface to the shared content session via the one or more input devices; and, in response to receiving a first input in the set of one or more inputs, displaying, within the user interface at a location visually associated with the first application interface area, a first graphical interface object selectable to add the first application interface area to the shared content session without adding the second application interface area to the shared content session, the first graphical interface object not visually associated with the second application interface area.
[0049] According to some embodiments, a non-transitory computer-readable storage medium is described. A non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: enabling a shared content session between the computer system and one or more external computer systems, wherein, when the shared content session is active, the computer system outputs individual content while individual content is being output by the one or more external computer systems; receiving, while the shared content session is active and while a plurality of application interface areas, including at least a portion of a first application interface area and at least a portion of a second application interface area, are simultaneously displayed in a user interface, via the one or more input devices, a set of one or more inputs corresponding to a request to add an application interface to the shared content session; and, in response to receiving a first input in the set of one or more inputs, displaying a first graphical interface object selectable to add the first application interface area to the shared content session without adding the second application interface area to the shared content session at a location visually associated with the first application interface area in the user interface, the first graphical interface object not visually associated with the second application interface area.
[0050] According to some embodiments, a temporary computer-readable storage medium is described. A temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: enabling a shared content session between the computer system and one or more external computer systems, wherein, when the shared content session is active, the computer system outputs individual content while the individual content is being output by the one or more external computer systems; receiving, while the shared content session is active and while a plurality of application interface areas, including at least a portion of a first application interface area and at least a portion of a second application interface area, are simultaneously displayed in a user interface, via the one or more input devices, a set of one or more inputs corresponding to a request to add an application interface to the shared content session; and, in response to receiving a first input in the set of one or more inputs, displaying, at a location visually associated with the first application interface area in the user interface, a first graphical interface object selectable to add the first application interface area to the shared content session without adding the second application interface area to the shared content session, the first graphical interface object not visually associated with the second application interface area.
[0051] According to some embodiments, a computer system configured to communicate with one or more output generation components and one or more input devices is described. The computer system comprises one or more processors and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: a shared content session between the computer system and one or more external computer systems, the shared content session, when active, enabling instructions for the computer system to output individual content while individual content is being output by the one or more external computer systems; while the shared content session is active and while a plurality of application interface areas, including at least a portion of a first application interface area and at least a portion of a second application interface area, are simultaneously displayed in a user interface, receiving, via one or more input devices, a set of one or more inputs corresponding to a request to add an application interface to the shared content session; and, in response to receiving a first input in the set of one or more inputs, displaying, at a location visually associated with the first application interface area in the user interface, a first graphical interface object selectable to add the first application interface area to the shared content session without adding the second application interface area to the shared content session, the first graphical interface object not visually associated with the second application interface area.
[0052] According to some embodiments, a computer system configured to communicate with one or more output generation components and one or more input devices is described. The computer system includes: means for a shared content session between the computer system and one or more external computer systems, the shared content session enabling the computer system to output individual content while the individual content is being output by the one or more external computer systems when the shared content session is active; receiving, while the shared content session is active and multiple application interface areas including at least a portion of a first application interface area and at least a portion of a second application interface area are simultaneously displayed within a user interface, a set of one or more inputs via the one or more input devices corresponding to a request to add an application interface to the shared content session; and displaying, in response to receiving a first input in the set of one or more inputs, a first graphical interface object in a location within the user interface visually associated with the first application interface area, the first graphical interface object being selectable to add the first application interface area to the shared content session without adding the second application interface area to the shared content session, the first graphical interface object not visually associated with the second application interface area.
[0053] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: a shared content session between the computer system and one or more external computer systems, the shared content session, when active, enabling the computer system to output individual content while individual content is being output by the one or more external computer systems; while the shared content session is active and while multiple application interface areas, including at least a portion of a first application interface area and at least a portion of a second application interface area, are simultaneously displayed in a user interface; receiving, via the one or more input devices, a set of one or more inputs corresponding to a request to add an application interface to the shared content session; and, in response to receiving a first input in the set of one or more inputs, displaying a first graphical interface object selectable to add the first application interface area to the shared content session without adding the second application interface area to the shared content session at a location visually associated with the first application interface area in the user interface, the first graphical interface object not visually associated with the second application interface area.
[0054] According to some embodiments, a method is described that is executed on a computer system in communication with one or more output generation components and one or more input devices, the method including: receiving data representing first content selected for a shared content session between the computer system and one or more external computer systems, the shared content session, when active, enabling the computer system to output distinct content while distinct content is being output by the one or more external computer systems, at the external computer system while the shared content session is active; and displaying, via an output generation component of the one or more output generation components, a display area including a representation of the first content in response to receiving the data representing the first content selected for the shared content session, wherein displaying the display area includes, in accordance with a determination that a first set of criteria is not met, displaying the representation of the first content with a first set of one or more controls visually associated with the representation of the first content for controlling a visual appearance of the display area; and, in accordance with a determination that the first set of criteria is met, displaying the representation of the first content without the first set of one or more controls for controlling the visual appearance of the display area.
[0055] According to some embodiments, a non-transitory computer-readable storage medium is described, the non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including: a shared content session between the computer system and one or more external computer systems, the shared content session, when active, enabling the computer system to output distinct content while distinct content is being output by the one or more external computer systems; and receiving data representing first content selected for the shared content session at the external computer systems while the shared content session is active. A non-transitory computer-readable storage medium comprising instructions for, in response to receiving data representing first content selected for a shared content session, displaying, via an output generation component of one or more output generation components, a display area including a representation of the first content, wherein displaying the display area includes: displaying the representation of the first content with a first set of one or more controls visually associated with the representation of the first content for controlling the visual appearance of the display area in accordance with a determination that a first set of criteria is not met; and displaying the representation of the first content without the first set of one or more controls for controlling the visual appearance of the display area in accordance with a determination that the first set of criteria is met.
[0056] According to some embodiments, a temporary computer-readable storage medium is described. A temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: a shared content session between the computer system and one or more external computer systems, the shared content session, when active, enabling the computer system to output individual content while individual content is being output by the one or more external computer systems; receiving data representing first content selected for the shared content session at the external computer systems while the shared content session is active; and displaying a display area including a representation of the first content via an output generation component of the one or more output generation components in response to receiving the data representing the first content selected for the shared content session, wherein displaying the display area includes: displaying the representation of the first content with a first set of one or more controls visually associated with the representation of the first content for controlling a visual appearance of the display area in accordance with a determination that a first set of criteria is not met; and displaying the representation of the first content without the first set of one or more controls for controlling the visual appearance of the display area in accordance with a determination that the first set of criteria is met.
[0057] According to some embodiments, a computer system configured to communicate with one or more output generation components and one or more input devices is described. The computer system includes one or more processors and a memory that stores one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for a shared content session between the computer system and one or more external computer systems, the shared content session, when active, enabling the computer system to output individual content while individual content is being output by the one or more external computer systems, receiving data representing first content selected for the shared content session at the external computer systems while the shared content session is active, and displaying a display area including a representation of the first content via an output generation component of the one or more output generation components in response to receiving the data representing the first content selected for the shared content session, wherein displaying the display area includes displaying the representation of the first content with a first set of one or more controls visually associated with the representation of the first content for controlling the visual appearance of the display area in accordance with a determination that the first set of criteria is not met, and displaying the representation of the first content without the first set of one or more controls for controlling the visual appearance of the display area in accordance with a determination that the first set of criteria is met.
[0058] According to some embodiments, a computer system configured to communicate with one or more output generation components and one or more input devices is described, the computer system including: means for receiving, at the external computer system, data representing first content selected for a shared content session between the computer system and the one or more external computer systems, the shared content session, when active, enabling the computer system to output individual content while individual content is being output by the one or more external computer systems; and means for displaying, via an output generation component of the one or more output generation components, a display area including a representation of the first content in response to receiving the data representing the first content selected for the shared content session, the displaying of the display area including, in accordance with a determination that a first set of criteria is not met, displaying the representation of the first content with a first set of one or more controls visually associated with the representation of the first content for controlling a visual appearance of the display area; and, in accordance with a determination that the first set of criteria is met, displaying the representation of the first content without the first set of one or more controls for controlling the visual appearance of the display area.
[0059] According to some embodiments, a computer program product is described. The computer program product includes one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: a shared content session between the computer system and one or more external computer systems, the shared content session, when active, enabling the computer system to output individual content while individual content is being output by the one or more external computer systems; receiving data representing first content selected for the shared content session at the external computer systems while the shared content session is active; and displaying, via an output generation component of the one or more output generation components, a display area including a representation of the first content in response to receiving the data representing the first content selected for the shared content session, wherein displaying the display area includes, in accordance with a determination that a first set of criteria is not met, displaying the representation of the first content with a first set of one or more controls visually associated with the representation of the first content for controlling a visual appearance of the display area; and, in accordance with a determination that the first set of criteria is met, displaying the representation of the first content without the first set of one or more controls for controlling the visual appearance of the display area.
[0060] According to some embodiments, a method is described that is executed on a computer system in communication with one or more output generation components and one or more input devices. The method includes displaying, via the one or more output generation components, a first user interface that simultaneously displays, in a first user interface, a view of content of the shared content session overlaid on a background user interface and a first representation of a participant in the real-time communication session, the first representation of the participant in the real-time communication session displayed at a first discrete location relative to the view of the content of the shared content session; receiving, while displaying the first user interface, a request to move the view of the content in the first user interface; and, in response to receiving the request to move the view of the content, moving the view of the content in accordance with the request. the first representation of the participant is moved so that the first representation of the participant is displayed at a first discrete location relative to the view of the content of the shared content session; detecting a request to discontinue displaying the view of the content of the shared content session on the background user interface after moving the view of the content and the first representation of the participant; and in response to detecting the request to discontinue displaying the view of the content of the shared content session on the background user interface, displaying, via one or more output generation components, a view of the content that is not displayed on the background user interface without displaying the representation of the participant at the first discrete location relative to the view of the content of the shared content session.
[0061] According to some embodiments, a non-transitory computer-readable storage medium is described, the non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs displaying the first user interface via the one or more output generation components, the one or more programs including simultaneously displaying, in the first user interface, a view of content of the shared content session overlaid on a background user interface and first representations of participants in the real-time communication session, the first representations of the participants in the real-time communication session displayed at a first discrete location relative to the view of the content of the shared content session, and moving the view of the content within the first user interface while displaying the first user interface. the first representation of the participant so that the first representation of the participant is displayed in a first discrete location relative to the view of the content of the shared content session; after moving the view of the content and the first representation of the participant, detect a request to discontinue displaying the view of the content of the shared content session on the background user interface; and in response to detecting the request to discontinue displaying the view of the content of the shared content session on the background user interface, display, via one or more output generation components, the view of the content that is not displayed on the background user interface without displaying the representation of the participant in the first discrete location relative to the view of the content of the shared content session.
[0062] According to some embodiments, a temporary computer-readable storage medium is described, the temporary computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs displaying the first user interface via the one or more output generation components, the first user interface including simultaneously displaying, in the first user interface, a view of content of the shared content session overlaid on a background user interface and first representations of participants in the real-time communication session, the first representations of the participants in the real-time communication session displayed at a first discrete location relative to the view of the content of the shared content session, and moving the view of the content in the first user interface while displaying the first user interface. the first representation of the participant so that the first representation of the participant is displayed in a first discrete location relative to the view of the content of the shared content session; after moving the view of the content and the first representation of the participant, detect a request to discontinue displaying the view of the content of the shared content session on the background user interface; and in response to detecting the request to discontinue displaying the view of the content of the shared content session on the background user interface, display, via one or more output generation components, the view of the content that is not displayed on the background user interface without displaying the representation of the participant in the first discrete location relative to the view of the content of the shared content session.
[0063] According to some embodiments, a computer system is described that is configured to communicate with one or more output generation components and one or more input devices. The computer system includes one or more processors and a memory that stores one or more programs configured to be executed by the one or more processors, the one or more programs displaying the first user interface via the one or more output generation components, the first user interface including simultaneously displaying, in a first user interface, a view of content of the shared content session overlaid on a background user interface and first representations of participants in the real-time communication session, the first representations of the participants in the real-time communication session displayed at a first discrete location relative to the view of the content of the shared content session; receiving, while displaying the first user interface, a request to move the view of the content within the first user interface; and displaying a request to move the view of the content within the first user interface. The method includes instructions for: in response to receiving a request to move the view, moving the view of the content in accordance with the request, moving a first representation of the participant so that the first representation of the participant is displayed in a first discrete location relative to the view of the content of the shared content session; detecting a request to discontinue displaying the view of the content of the shared content session on the background user interface after moving the view of the content and the first representation of the participant; and in response to detecting the request to discontinue displaying the view of the content of the shared content session on the background user interface, displaying, via one or more output generation components, a view of the content that is not displayed on the background user interface without displaying the representation of the participant in the first discrete location relative to the view of the content of the shared content session.
[0064] According to some embodiments, a computer system is described, the computer system being configured to communicate with one or more output generation components and one or more input devices. The computer system includes means for displaying the first user interface via the one or more output generation components, the first user interface including simultaneously displaying, in the first user interface, a view of content of the shared content session overlaid on a background user interface and a first representation of a participant of the real-time communication session, the first representation of the participant of the real-time communication session being displayed at a first discrete location relative to the view of the content of the shared content session; means for receiving, while displaying the first user interface, a request to move the view of the content in the first user interface; and means for, in response to receiving the request to move the view of the content, moving the view of the content in accordance with the request. means for moving a first representation of the participant so that the first representation of the participant is displayed at a first discrete location relative to the view of the content of the shared content session; means for detecting a request to stop displaying the view of the content of the shared content session on the background user interface after moving the view of the content and the first representation of the participant; and means for displaying, via one or more output generation components, a view of the content that is not displayed on the background user interface without displaying the representation of the participant at the first discrete location relative to the view of the content of the shared content session, in response to detecting the request to stop displaying the view of the content of the shared content session on the background user interface.
[0065] According to some embodiments, a computer program product is described, the computer program product including one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including simultaneously displaying, in a first user interface, a view of content of the shared content session overlaid on a background user interface and first representations of participants in the real-time communication session, the first representations of the participants in the real-time communication session displayed at a first discrete location relative to the view of the content of the shared content session, and a request to move the view of the content in the first user interface while displaying the first user interface via the one or more output generation components. and in response to receiving a request to move the view of the content, moving the view of the content in accordance with the request and moving a first representation of the participant so that the first representation of the participant is displayed in a first discrete location relative to the view of the content of the shared content session; detecting a request to discontinue displaying the view of the content of the shared content session on the background user interface after moving the view of the content and the first representation of the participant; and in response to detecting the request to discontinue displaying the view of the content of the shared content session on the background user interface, displaying, via one or more output generation components, a view of the content that is not displayed on the background user interface without displaying the representation of the participant in the first discrete location relative to the view of the content of the shared content session.
[0066] According to some embodiments, a method is described that is executed on a computer system in communication with one or more output generation components and one or more input devices. The method includes displaying, via the one or more output generation components, a user interface of the video communication application that includes simultaneously displaying dynamic visual content and one or more representations of participants in the video communication session in a user interface of the video communication application, the one or more representations of the participants in the video communication session being displayed in a first arrangement; detecting a change in size and / or position of the dynamic visual content that changes an amount of the user interface of the video communication application that is covered by the dynamic visual content; and, in response to detecting the change in size and / or position of the dynamic visual content, displaying, via the one or more output generation components, the one or more representations of the participants in the video communication session in a second arrangement in the user interface of the video communication application, the second arrangement being different from the first arrangement and based on the change in size and / or position of the dynamic visual content.
[0067] According to some embodiments, a non-transitory computer-readable storage medium is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for displaying, via the one or more output generation components, a user interface of the video communication application including simultaneously displaying, in a user interface of the video communication application, dynamic visual content and one or more representations of participants in the video communication session, where the one or more representations of the participants in the video communication session are displayed in a first arrangement; detecting a change in size and / or position of the dynamic visual content that changes an amount of the user interface of the video communication application that is covered by the dynamic visual content; and, in response to detecting the change in size and / or position of the dynamic visual content, displaying, via the one or more output generation components, the one or more representations of the participants in the video communication session in a second arrangement in the user interface of the video communication application, where the second arrangement differs from the first arrangement and is based on the change in size and / or position of the dynamic visual content.
[0068] According to some embodiments, a temporary computer-readable storage medium is described, the temporary computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for displaying, via the one or more output generation components, a user interface of the video communication application including simultaneously displaying dynamic visual content and one or more representations of participants in the video communication session in a user interface of the video communication application, the one or more representations of the participants in the video communication session being displayed in a first arrangement; detecting a change in size and / or position of the dynamic visual content that changes an amount of the user interface of the video communication application that is covered by the dynamic visual content; and, in response to detecting the change in size and / or position of the dynamic visual content, displaying, via the one or more output generation components, the one or more representations of the participants in the video communication session in a second arrangement in the user interface of the video communication application, the second arrangement being different from the first arrangement and based on the change in size and / or position of the dynamic visual content.
[0069] According to some embodiments, a computer system configured to communicate with one or more output generation components and one or more input devices is described. The computer system includes one or more processors and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions to: display, via the one or more output generation components, a user interface of the video communication application, including simultaneously displaying dynamic visual content and one or more representations of participants in the video communication session in a user interface of the video communication application, the one or more representations of the participants in the video communication session being displayed in a first arrangement; detect a change in size and / or position of the dynamic visual content that changes an amount of the user interface of the video communication application that is covered by the dynamic visual content; and, in response to detecting the change in size and / or position of the dynamic visual content, display, via the one or more output generation components, the one or more representations of the participants in the video communication session in a second arrangement in the user interface of the video communication application, the second arrangement being different from the first arrangement and based on the change in size and / or position of the dynamic visual content.
[0070] According to some embodiments, a computer system configured to communicate with one or more output generation components and one or more input devices is described, comprising: means for displaying, via the one or more output generation components, a user interface of a video communication application, including simultaneously displaying dynamic visual content and one or more representations of participants in the video communication session in the user interface of the video communication application, wherein the one or more representations of the participants in the video communication session are displayed in a first arrangement; means for detecting a change in size and / or position of the dynamic visual content, which changes an amount of the user interface of the video communication application covered by the dynamic visual content; and means for displaying, via the one or more output generation components, the one or more representations of the participants in the video communication session in a second arrangement within the user interface of the video communication application, the second arrangement being different from the first arrangement and based on the change in size and / or position of the dynamic visual content, in response to detecting the change in size and / or position of the dynamic visual content.
[0071] According to some embodiments, a computer program product is described, the computer program product including one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for displaying, via the one or more output generation components, a user interface of the video communication application including simultaneously displaying dynamic visual content and one or more representations of participants in the video communication session in a user interface of the video communication application, the one or more representations of the participants in the video communication session being displayed in a first arrangement; detecting a change in size and / or position of the dynamic visual content that changes an amount of the user interface of the video communication application that is covered by the dynamic visual content; and, in response to detecting the change in size and / or position of the dynamic visual content, displaying, via the one or more output generation components, the one or more representations of the participants in the video communication session in a second arrangement in the user interface of the video communication application, the second arrangement being different from the first arrangement and based on the change in size and / or position of the dynamic visual content.
[0072] According to some embodiments, a method is described that is executed on a computer system in communication with one or more display generation components and one or more input devices, the method including: receiving, via the one or more input devices, while displaying a representation of first content via the one or more display generation components, one or more inputs corresponding to a request to display options associated with the first content; and, in response to receiving the one or more inputs corresponding to the request to display options associated with the first content, a separate user interface including a first graphical user interface object selectable to initiate a process for performing a first action associated with the first content, the first action including sharing the first content in a live communication session, and a second graphical user interface object selectable to initiate a process for performing a second action associated with the first content, the second action being different from the first action. displaying, via one or more display generation components, a respective user interface associated with the first content; receiving, while displaying the respective user interface, a selection input directed to the respective user interface; in response to receiving the selection input directed to the respective user interface, initiating a process for sharing the first content in the live communication session without initiating a process for performing a second operation in accordance with a determination that the selection input corresponds to a selection of a first graphical user interface object; and initiating a process for performing the second operation in the live communication session without initiating a process for sharing the first content in the live communication session in accordance with a determination that the selection input corresponds to a selection of a second graphical user interface object.
[0073] According to some embodiments, a non-transitory computer-readable storage medium is described, the non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more display generation components and one or more input devices, the one or more programs receiving, via the one or more input devices, one or more inputs corresponding to a request to display options associated with the first content while displaying a representation of the first content via the one or more display generation components, and in response to receiving the one or more inputs corresponding to the request to display options associated with the first content, a separate user interface displaying a first graphical user interface object selectable to initiate a process for performing a first action associated with the first content, the first action including sharing the first content in a live communication session, and a second action associated with the first content, the second action including a first operation. and a second graphical user interface object selectable to initiate a process for performing a second operation, the second operation being different from the first operation; while displaying the individual user interface, receiving a selection input directed to the individual user interface; in response to receiving the selection input directed to the individual user interface, initiate a process for sharing the first content in the live communication session without initiating a process for performing the second operation in accordance with a determination that the selection input corresponds to a selection of the first graphical user interface object; and initiating a process for sharing the first content in the live communication session without initiating a process for performing the second operation in accordance with a determination that the selection input corresponds to a selection of the second graphical user interface object.
[0074] According to some embodiments, a temporary computer-readable storage medium is described, the temporary computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more display generation components and one or more input devices, the one or more programs receiving, via the one or more display generation components, one or more inputs corresponding to a request to display options associated with the first content while displaying a representation of the first content, and displaying, via the one or more display generation components, a first graphical user interface object associated with the first content, the first graphical user interface object being selectable to initiate a process for performing a first action associated with the first content, the first action including sharing the first content in a live communication session. and a second graphical user interface object associated with the first content, the second action being different from the first action and selectable to initiate a process for performing the second action; while displaying the respective user interface, receiving a selection input directed to the respective user interface; in response to receiving the selection input directed to the respective user interface, in accordance with a determination that the selection input corresponds to a selection of the first graphical user interface object, initiating a process for sharing the first content in the live communication session without initiating a process for performing the second action; and in accordance with a determination that the selection input corresponds to a selection of the second graphical user interface object, initiating a process for sharing the first content in the live communication session without initiating a process for performing the second action.
[0075] According to some embodiments, a computer system is described that is in communication with one or more display generation components and one or more input devices. The computer system includes one or more processors and a memory that stores one or more programs configured to be executed by the one or more processors, the one or more programs receiving, via the one or more input devices, one or more inputs corresponding to a request to display options associated with the first content while displaying a representation of the first content via the one or more display generation components. In response to receiving the one or more inputs corresponding to the request to display options associated with the first content, a separate user interface is configured to display a first graphical user interface object that is selectable to initiate a process for performing a first action associated with the first content, the first action including sharing the first content in a live communication session, and a second action associated with the first content, the second action being different from the first action. and a second graphical user interface object selectable to initiate a process for performing the second operation; while displaying the individual user interface, receive a selection input directed to the individual user interface; in response to receiving the selection input directed to the individual user interface, initiate a process for sharing the first content in the live communication session without initiating a process for performing the second operation in accordance with a determination that the selection input corresponds to a selection of the first graphical user interface object; and in accordance with a determination that the selection input corresponds to a selection of the second graphical user interface object, initiate a process for sharing the first content in the live communication session without initiating a process for performing the second operation.
[0076] According to some embodiments, a computer system is described, the computer system being in communication with one or more display generation components and one or more input devices. The computer system includes means for receiving, via the one or more input devices, one or more inputs corresponding to a request to display options associated with the first content while displaying a representation of the first content via the one or more display generation components; and, in response to receiving the one or more inputs corresponding to the request to display options associated with the first content, via the one or more display generation components, displaying a first graphical user interface object associated with the first content, the first action associated with the first content, the first action including sharing the first content in a live communication session, and a second action associated with the first content, the second action being different from the first action. a second graphical user interface object selectable to initiate a process for performing an operation; and while displaying the individual user interface, receiving a selection input directed to the individual user interface, and in response to receiving the selection input directed to the individual user interface, in accordance with a determination that the selection input corresponds to a selection of the first graphical user interface object, initiating a process for sharing first content in the live communication session without initiating a process for performing the second operation, and in accordance with a determination that the selection input corresponds to a selection of the second graphical user interface object, initiating a process for sharing first content in the live communication session without initiating a process for performing the second operation.
[0077] In some embodiments, a computer program product is described that includes one or more programs configured to be executed by one or more processors of a computer system in communication with one or more display generation components and one or more input devices, the one or more programs receiving, via the one or more input devices, one or more inputs corresponding to a request to display options associated with the first content while displaying a representation of the first content via the one or more display generation components, and in response to receiving the one or more inputs corresponding to the request to display options associated with the first content, a separate user interface displaying a first graphical user interface object selectable to initiate a process for performing a first operation associated with the first content, the first operation including sharing the first content in a live communication session, and a second operation associated with the first content, the second operation being different from the first operation. and a second graphical user interface object selectable to initiate a process for performing the first operation; and while displaying the individual user interface, receive a selection input directed to the individual user interface; and in response to receiving the selection input directed to the individual user interface, initiate a process for sharing the first content in the live communication session without initiating a process for performing the second operation in accordance with a determination that the selection input corresponds to a selection of the first graphical user interface object; and initiate a process for performing the second operation in the live communication session without initiating a process for sharing the first content in the live communication session in accordance with a determination that the selection input corresponds to a selection of the second graphical user interface object.
[0078] Executable instructions to perform these functions are optionally contained in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more processors. Executable instructions to perform these functions are optionally contained in a transitory computer-readable storage medium or other computer program product configured for execution by one or more processors.
[0079] Thus, devices are provided with faster and more efficient methods and interfaces for managing shared content sessions, thereby increasing the effectiveness, efficiency, and user satisfaction of such devices. Such methods and interfaces may complement or replace other methods for managing shared content sessions.
[0080] For a better understanding of the various described embodiments, reference should be made to the following Detailed Description of the Invention in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout: [Brief explanation of the drawings]
[0081] [Figure 1A] FIG. 1 is a block diagram illustrating a portable multifunction device with a touch-sensitive display in accordance with some embodiments. [Figure 1B] FIG. 2 is a block diagram illustrating exemplary components for event processing according to some embodiments. [Figure 2] FIG. 1 illustrates a portable multifunction device with a touch screen in accordance with some embodiments. [Figure 3] FIG. 1 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface in accordance with some embodiments. [Figure 4A] 1 illustrates an exemplary user interface for a menu of applications on a portable multifunction device in accordance with some embodiments. [Figure 4B]1 illustrates an exemplary user interface for a multifunction device having a touch-sensitive surface that is separate from the display in accordance with some embodiments. [Figure 5A] 1 illustrates a personal electronic device according to some embodiments. [Figure 5B] FIG. 1 is a block diagram illustrating a personal electronic device according to some embodiments. [Figure 5C] 1 illustrates an exemplary diagram of a communication session between electronic devices according to some embodiments. [Figure 6A] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6B] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6C] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6D] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6E] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6F] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6G] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6H] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6I] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6J]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6K] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6L] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6M] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6N] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6O] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6P] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6Q] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6R] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6S] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6T] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6U] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6V] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6W]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6X] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6Y] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6Z] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AA] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AB] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AC] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AD] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AE] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AF] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AG] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AH] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AI] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AJ]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AK] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AL] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AM] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AN] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AO] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AP] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AQ] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AR] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AS] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AT] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AU] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AV] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AW]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AX] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AY] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6AZ] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BA] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BB] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BC] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BD] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BE] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BF] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BG] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BH] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BI] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BJ]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BK] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BL] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BM] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BN] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BO] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BP] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BQ] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BR] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BS] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BT] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BU] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BV] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BW]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BX] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BY] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6BZ] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CA] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CB] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CC] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CD] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CE] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CF] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CG] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CH] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CI] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CJ]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CK] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CL] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CM] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CN] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CO] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CP] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CQ] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CR] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CS] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6 CT] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CU] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CV] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CW]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CX] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CY] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6CZ] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DA] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DB] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DC] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DD] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DE] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DF] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DG] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DH] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DI] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DJ]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DK] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DL] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DM] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DN] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DO] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DP] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DQ] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DR] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DS] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DT] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DU] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DV] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DW]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DX] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DY] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6DZ] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EA] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EB] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EC] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6ED] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EE] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EF] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EG] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EH] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EI] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EJ]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EK] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EL] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EM] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EN] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EO] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EP] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 6EQ] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 7] FIG. 1 is a flow diagram illustrating a method for managing a shared content session, according to some embodiments. [Figure 8] FIG. 1 is a flow diagram illustrating a method for managing a shared content session, according to some embodiments. [Figure 9] FIG. 1 is a flow diagram illustrating a method for managing a shared content session, according to some embodiments. [Figure 10] FIG. 1 is a flow diagram illustrating a method for managing a shared content session, according to some embodiments. [Figure 11] FIG. 1 is a flow diagram illustrating a method for managing a shared content session, according to some embodiments. [Figure 12]FIG. 1 is a flow diagram illustrating a method for managing a shared content session, according to some embodiments. [Figure 13] FIG. 1 is a flow diagram illustrating a method for managing a shared content session, according to some embodiments. [Figure 14A] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14B] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14C] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14D] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14E] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14F] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14G] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14H] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14I] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14J] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14K] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14L] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14M] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14N] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14O] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14P] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14Q] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14R] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14S] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14T] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14U] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14V] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14W] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14X]1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14Y] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14Z] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14AA] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14AB] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14AC] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14AD] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14AE] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14AF] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 14AG] 1 shows an exemplary user interface for managing a shared content session according to some embodiments. [Figure 15] FIG. 1 is a flow diagram illustrating a method for managing a shared content session according to some embodiments. [Figure 16] FIG. 1 is a flow diagram illustrating a method for managing a shared content session, according to some embodiments. [Figure 17] FIG. 1 is a flow diagram illustrating a method for managing a shared content session, according to some embodiments. [Figure 18]FIG. 1 is a flow diagram illustrating a method for managing a shared content session, according to some embodiments. [Figure 19A] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19B] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19C] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19D] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19E] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19F] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19G] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19H] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19I] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19J] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19K] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19L] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19M]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19N] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19O] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19P] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19Q] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19R] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19S] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19T] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19U] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19V] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19W] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19X] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19Y] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19Z]1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19AA] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 19AB] 1 illustrates an exemplary user interface for managing a shared content session according to some embodiments. [Figure 20A] 1 shows a flow diagram illustrating a method for managing a shared content session according to some embodiments. [Figure 20B] 1 shows a flow diagram illustrating a method for managing a shared content session according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION
[0082] The following description sets forth example methods, parameters, etc. However, it should be recognized that such description is not intended as a limitation on the scope of the present disclosure, but rather is provided as a description of example embodiments.
[0083] There is a need for electronic devices that provide efficient methods and interfaces for managing shared content sessions. Such techniques can reduce the cognitive burden on users accessing content in a shared content session, thereby increasing productivity. Furthermore, such techniques can reduce processor and battery power that would otherwise be wasted on redundant user input.
[0084] 1A-1B, 2, 3, 4A-4B, and 5A-5C provide a description of an exemplary device for performing techniques for managing a shared content session. FIGS. 6A-6EQ illustrate an exemplary user interface for managing a shared content session. FIGS. 7-13 and 17-18 are flow diagrams illustrating methods for managing a shared content session according to some embodiments. The user interfaces of FIGS. 6A-6EQ are used to illustrate processes described below, including the processes of FIGS. 7-13 and 17-18. FIGS. 14A-14AG illustrate an exemplary user interface for managing a shared content session. FIGS. 15-16 are flow diagrams illustrating methods for managing a shared content session according to some embodiments. The user interfaces of FIGS. 14A-14AG are used to illustrate processes described below, including the processes of FIGS. 15-16. FIGS. 19A-19AB illustrate an exemplary user interface for managing a shared content session. FIGS. 20A-20B are flow diagrams illustrating methods for managing a shared content session according to some embodiments. The user interfaces of Figures 19A-19AB are used to illustrate the processes described below, including the process of Figures 20A-20B.
[0085] The processes described below enhance the usability of a device and streamline the user-device interface (e.g., by helping the user provide appropriate inputs when operating / interacting with the device and reducing user errors) through various techniques, including providing improved visual feedback to the user, reducing the number of inputs required to perform an action, providing additional control options without cluttering the user interface with additional controls that are displayed, performing an action without requiring further user input when a set of conditions is met, and / or other techniques. These techniques also reduce power usage and improve the device's battery life by allowing the user to use the device more quickly and efficiently.
[0086] Furthermore, for methods described herein in which one or more steps are conditioned on one or more conditions being satisfied, it should be understood that the described method can be repeated in multiple iterations, such that over the course of the iterations, all of the conditions on which the method steps are conditioned are satisfied in different iterations of the method. For example, if a method requires performing a first step if a condition is satisfied and a second step if the condition is not satisfied, one skilled in the art will understand that the steps recited in the claim are repeated in a particular order until the conditions are satisfied and then no longer satisfied. Thus, a method described with one or more steps that depend on one or more conditions being satisfied can be rewritten as a method that is repeated until each condition recited in the method is satisfied. However, this is not required for system or computer-readable medium claims in which the system or computer-readable medium includes instructions for performing a conditional action based on the satisfaction of the corresponding one or more conditions, and thus can determine whether a contingency is met without explicitly repeating the method steps until all conditions on which the method steps are conditioned are satisfied. Those skilled in the art will also understand that, as with methods having conditional steps, the system or computer-readable storage medium may repeat the steps of the method as many times as necessary to ensure that all of the conditional steps have been performed.
[0087] In the following description, terms such as "first" and "second" are used to describe various elements, but these elements should not be limited by these terms. In some embodiments, these terms are used to distinguish one element from another. For example, a first touch can be referred to as a second touch, and similarly, a second touch can be referred to as a first touch, without departing from the scope of various described embodiments. In some embodiments, the first touch and the second touch are two separate references to the same touch. In some embodiments, the first touch and the second touch are both touches, but they are not the same touch.
[0088] The terminology used in the description of the various embodiments set forth herein is for the purpose of describing particular embodiments only and is not intended to be limiting. In the description of the various embodiments set forth 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. Also, as used herein, the term "and / or" should be understood to refer to and include 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.
[0089] The term "if" is interpreted, optionally, according to the context, to mean "when" or "upon," or "in response to determining" or "in response to detecting." Similarly, the phrases "if it is determined" or "if [a stated condition or event] is detected" are interpreted, optionally, according to the context, 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]."
[0090] 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. Optionally, other portable electronic devices, such as a laptop computer or tablet computer having a touch-sensitive surface (e.g., a touchscreen display and / or a touchpad), are also 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). In some embodiments, the electronic device is a computer system in communication (e.g., via wired communication, via wireless communication) with a display generation component. The display generation component is configured to provide a visual output, such as a display via a CRT display, a display via an LED display, or a display via image projection. In some embodiments, the display generation component is integrated with the computer system. In some embodiments, the display generation component is separate from the computer system. As used herein, "displaying" content includes displaying content (e.g., video data rendered or decoded by display controller 156) by transmitting data (e.g., image data or video data) over a wired or wireless connection to an integrated or external display generation component to visually generate the content.
[0091] 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.
[0092] The device typically supports a variety of applications such as one or more of a drawing application, a presentation application, a word processing application, a website creation application, a disc authoring application, a spreadsheet application, a gaming application, a telephony application, a video conferencing application, an email application, an instant messaging application, a training support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and / or a digital video player application.
[0093] 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 various applications with user interfaces that are intuitive and transparent to the user.
[0094] Attention now turns to embodiments of portable devices with touch-sensitive displays. FIG. 1A is a block diagram illustrating portable multifunction device 100 having touch-sensitive display system 112, according to some embodiments. Touch-sensitive display 112 may conveniently be referred to as a "touch screen" and may also be known or referred to as a "touch-sensitive display system." 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 control devices 116, and external port 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more contact intensity sensors 165 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 via one or more communication buses or signal lines 103.
[0095] As used herein and in the claims, the term “intensity” of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch-sensitive surface, or a proxy for the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values that includes at least four distinct values and more typically includes hundreds (e.g., at least 256) distinct values. The intensity of a contact is optionally determined (or measured) using various techniques and various sensors or combinations of sensors. For example, one or more force sensors under or adjacent to the touch-sensitive surface are optionally used to measure force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted averaged) to determine an estimated force of the contact. Similarly, a pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size and / or change in the contact area detected on the touch-sensitive surface, the capacitance and / or change in the capacitance of the touch-sensitive surface proximate the contact, and / or the resistance and / or change in the capacitance of the touch-sensitive surface proximate the contact are optionally used as a surrogate for the force or pressure of the contact on the touch-sensitive surface. In some implementations, the surrogate measure of the force or pressure of the contact is used directly to determine whether an intensity threshold is exceeded (e.g., the intensity threshold is described in units corresponding to the surrogate measure). In some implementations, the surrogate measure of the contact force or pressure is converted to an estimate of the force or pressure, and the estimate of the force or pressure is used to determine whether an intensity threshold is exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). Using contact intensity as an attribute of user input allows users to access additional device functionality (e.g., on a touch-sensitive display) and / or receive user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical controls such as knobs or buttons) that may not otherwise be accessible to users on devices of reduced size that have limited footprint for displaying affordances.
[0096] 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 the user's hand), the tactile output produced 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 “downclick” or “upclick” of a physical actuator button. In some cases, a user feels a tactile sensation such as a “downclick” or “upclick” 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 a touch-sensitive surface is optionally interpreted or perceived by a user as "roughness" of the touch-sensitive surface, even if there is no change in the smoothness of the touch-sensitive surface. While such user interpretation of touch depends on the user's personal sensory perception, there are many sensory perceptions of touch that are common to the majority of users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., "upclick," "downclick," "roughness"), unless otherwise specified, 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.
[0097] It should be 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 Figure 1A are implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing circuits and / or application specific integrated circuits.
[0098] 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. Memory controller 122 optionally controls access to memory 102 by other components of device 100.
[0099] Peripheral interface 118 may be used to couple input and output peripherals of the device to CPU 120 and memory 102. One or more processors 120 operate or execute various software programs (e.g., computer programs (e.g., including instructions)) and / or instruction sets stored in memory 102 to perform various functions and process data for device 100. In some embodiments, peripheral interface 118, CPU 120, and memory controller 122 are optionally implemented on a single chip, such as chip 104. In some other embodiments, they are optionally implemented on separate chips.
[0100] RF (radio frequency) circuitry 108 transmits and receives RF signals, also called electromagnetic signals. 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. RF circuitry 108 optionally includes well-known circuitry for performing these functions, including, but not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, etc. RF circuitry 108 optionally communicates via wireless communication with networks, such as the Internet, also called 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. RF circuitry 108 optionally includes well-known circuitry for detecting near field communication (NFC) fields, such as by short-range radios. Wireless communication optionally includes, but is not limited to, Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPA), Long Term Evolution (LTE), and other standards.evolution (LTE), near field communications (NFC), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Bluetooth Low Energy (BTLE), Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, and / or IEEE 802.11ac), 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), The present invention may use any of a number of communication standards, protocols, and technologies, including the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (XMPP), the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), the Instant Messaging and Presence Service (IMPS), and / or the Short Message Service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this application.
[0101] Audio circuit 110, speaker 111, and microphone 113 provide an audio interface between a user and device 100. Audio circuit 110 receives audio data from peripherals interface 118, converts the audio data into electrical signals, and transmits the electrical signals to speaker 111. Speaker 111 converts the electrical signals into sound waves audible to humans. Audio circuit 110 also receives electrical signals converted from sound waves by microphone 113. Audio circuit 110 converts the electrical signals into audio data and transmits the audio data to peripherals interface 118 for processing. The audio data is optionally retrieved from and / or transmitted to memory 102 and / or RF circuit 108 by peripherals interface 118. In some embodiments, audio circuit 110 also includes a headset jack (e.g., 212 in 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., mono or binaural headphones) and an input (e.g., a microphone).
[0102] I / O subsystem 106 couples input / output peripherals on device 100, such as touchscreen 112 and other input control devices 116, to peripheral interface 118. I / O subsystem 106 optionally includes display controller 156, optical sensor controller 158, depth camera controller 169, intensity sensor controller 159, haptic feedback controller 161, and one or more input controllers 160 for other input or control devices. One or more input controllers 160 receive / send electrical signals from / to other input control devices 116. Other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, etc. In some embodiments, input controller(s) 160 are optionally coupled to any (or none) of a keyboard, an infrared port, a USB port, and a pointer device such as a mouse. The one or more buttons (e.g., 208 in FIG. 2 ) optionally include up / down buttons for volume control of speaker 111 and / or microphone 113. The one or more buttons optionally include push buttons (e.g., 206 in FIG. 2 ). In some embodiments, the electronic device is a computer system in communication with one or more input devices (e.g., via wireless communication over wired communication). In some embodiments, the one or more input devices include a touch-sensitive surface (e.g., a trackpad as part of a touch-sensitive display). In some embodiments, the one or more input devices include one or more camera sensors (e.g., one or more optical sensors 164 and / or one or more depth camera sensors 175), such as for tracking user gestures (e.g., hand gestures and / or air gestures) as input. In some embodiments, the one or more input devices are integrated with the computer system. In some embodiments, the one or more input devices are separate from the computer system.In some embodiments, an air gesture is a gesture that is detected without the user touching an input element that is part of the device (or independent of an input element that is part of the device) and is based on detected movement of a part of the user's body, including movement of the user's body relative to an absolute reference (e.g., the angle of the user's arm relative to the ground, or the distance of the user's hand relative to the ground), movement of the user's body relative to another part of the user's body (e.g., movement of the user's hand relative to the user's shoulder, movement of the user's other hand relative to one of the user's hands, and / or movement of the user's fingers relative to another finger or part of the user's hand), and / or absolute movement of a part of the user's body (e.g., a tap gesture that includes movement of the hand in a predetermined pose by a predetermined amount and / or speed, or a shake gesture that includes rotation of a part of the user's body at a predetermined speed or amount).
[0103] A quick press of a push button optionally unlocks the touchscreen 112 or optionally initiates the process of unlocking the device using gestures on the touchscreen, as described in U.S. Patent Application Serial No. 11 / 322,549, filed December 23, 2005, "Unlocking a Device by Performing Gestures on an Unlock Image," U.S. Patent No. 7,657,849, which is incorporated herein by reference in its entirety. A longer press of a push button (e.g., 206) optionally turns power on or off to the device 100. The functionality of one or more of the buttons is optionally customizable by the user. The touchscreen 112 is used to implement virtual or soft buttons and one or more soft keyboards.
[0104] Touch-sensitive display 112 provides an input and output interface between the device and a user. Display controller 156 receives and / or sends electrical signals to touchscreen 112. Touchscreen 112 displays visual output to the user. This visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively "graphics"). In some embodiments, some or all of the visual output optionally corresponds to user interface objects.
[0105] Touchscreen 112 has a touch-sensitive surface, sensor, or set of sensors that accepts input from a user based on haptic and / or tactile contact. Touchscreen 112 and display controller 156 (along with any associated modules and / or instruction sets in memory 102) detects contacts (and any movement or cessation of contact) on touchscreen 112 and translates the detected contacts into interactions with user interface objects (e.g., one or more softkeys, icons, web pages, or images) displayed on touchscreen 112. In an exemplary embodiment, the point of contact between touchscreen 112 and the user corresponds to the user's finger.
[0106] Touchscreen 112 optionally uses LCD (liquid crystal display), LPD (light emitting polymer display), or LED (light emitting diode) technology, although other display technologies are used in other embodiments. Touchscreen 112 and display controller 156 optionally use any of a number of now known or later developed touch sensing technologies to detect contact and any movement or disruption thereof, including, but not limited to, capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements that determine one or more points of contact with touchscreen 112. In an exemplary embodiment, projected mutual capacitance sensing technology is used, such as that found in the iPhone® and iPod Touch® from Apple Inc. of Cupertino, California.
[0107] The touch-sensitive display in some embodiments of touchscreen 112 is optionally similar to the multi-touch-sensing touchpad described in U.S. Patent Nos. 6,323,846 (Westerman et al.), 6,570,557 (Westerman et al.), and / or 6,677,932 (Westerman), and / or U.S. Patent Application Publication No. 2002 / 0015024 A1, each of which is incorporated by reference herein in its entirety. However, touchscreen 112 displays visual output from device 100, whereas touch-sensitive touchpads do not provide visual output.
[0108] The touch-sensitive display in some embodiments of touch screen 112 is described in the following applications: (1) U.S. patent application Ser. No. 11 / 381,313, filed May 2, 2006, entitled "Multipoint Touch Surface Controller," (2) U.S. patent application Ser. No. 10 / 840,862, filed May 6, 2004, entitled "Multipoint Touchscreen," (3) U.S. patent application Ser. No. 10 / 903,964, filed July 30, 2004, entitled "Gestures For Touch Sensitive Input Devices," (4) U.S. patent application Ser. No. 11 / 048,264, filed January 31, 2005, entitled "Gestures For Touch Sensitive Input Devices," and (5) U.S. patent application Ser. No. 11 / 038,590, filed January 18, 2005, entitled "Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices." No. 11 / 228,758, filed September 16, 2005, entitled "Virtual Input Device Placement On A Touch Screen User Interface," (7) U.S. Patent Application No. 11 / 228,700, filed September 16, 2005, entitled "Operation Of A Computer With A Touch Screen Interface," (8) U.S. Patent Application No. 11 / 228,737, filed September 16, 2005, entitled "Activating Virtual Keys Of A Touch-Screen Virtual Keyboard," and (9) U.S. Patent Application No. 11 / 367,749, filed March 3, 2006, entitled "Multi-Functional Hand-Held Device," all of which are incorporated herein by reference in their entireties.
[0109] Touchscreen 112 optionally has a video resolution greater than 100 dpi. In some embodiments, the touchscreen has a video resolution of approximately 160 dpi. A user optionally contacts touchscreen 112 using any suitable object or accessory, such as a stylus, finger, or the like. In some embodiments, the user interface is designed to operate primarily using finger-based contact and gestures, which may not be as precise as stylus-based input due to the larger contact area of a finger on the touchscreen. In some embodiments, the device translates the coarse finger input into precise pointer / cursor positions or commands to perform the action desired by the user.
[0110] In some embodiments, in addition to the touchscreen, device 100 optionally includes a touchpad 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 touchscreen 112 or an extension of the touch-sensitive surface formed by the touchscreen.
[0111] 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., battery, alternating current (AC)), a recharging system, power failure detection circuitry, power converters or inverters, power status indicators (e.g., light emitting diodes (LEDs)), and any other components associated with generating, managing, and distributing electrical power within a portable device.
[0112] Device 100 also optionally includes one or more optical sensors 164. FIG. 1A shows an optical sensor coupled to optical sensor controller 158 in I / O subsystem 106. Optical sensor 164 optionally includes a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. Optical sensor 164 receives light from the environment projected through one or more lenses and converts the light into data representing an image. Optical sensor 164 optionally works in conjunction with imaging module 143 (also called a camera module) to capture still images or video. In some embodiments, the optical sensor is located on the back side of device 100 opposite touchscreen display 112 on the front of the device, so that the touchscreen display can be used as a viewfinder for capturing still images and / or video. In some embodiments, the optical sensor is located on the front of the device so that an image of a user is optionally captured for a video conference while the user views other video conference participants on the touchscreen display. In some embodiments, the position of the optical sensor 164 can be changed by the user (e.g., by rotating the lens and sensor within the device housing), so that a single optical sensor 164 is used for both video conferencing and capturing still images and / or video, along with a touchscreen display.
[0113] Device 100 also optionally includes one or more depth camera sensors 175. FIG. 1A shows a depth camera sensor coupled to depth camera controller 169 in I / O subsystem 106. Depth camera sensor 175 receives data from the environment and creates a three-dimensional model of an object (e.g., a face) in a scene from a viewpoint (e.g., the depth camera sensor). In some embodiments, in conjunction with imaging module 143 (also referred to as a camera module), depth camera sensor 175 is optionally used to determine a depth map of different portions of an image captured by imaging module 143. In some embodiments, a depth camera sensor is located on the front of device 100 to obtain images of the user with depth information for video conferencing and to capture selfie images with depth map data while the user views other video conference participants on a touchscreen display. In some embodiments, depth camera sensor 175 is located on the back of the device, or on both the back and front of device 100. In some embodiments, the position of the depth camera sensor 175 can be changed by the user (e.g., by rotating the lens and sensor within the device housing), so that the depth camera sensor 175 is used for both video conferencing and capturing still images and / or video, in conjunction with a touchscreen display.
[0114] 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 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electric force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of a contact on a touch-sensitive surface). Contact intensity sensor 165 receives contact intensity information (e.g., pressure information, or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is juxtaposed with or proximate to the 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 112, which is located on the front of device 100.
[0115] 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 optionally coupled to input controller 160 within I / O subsystem 106. Proximity sensor 166 optionally functions as described in U.S. patent application Ser. Nos. 11 / 241,839, "Proximity Detector In Handheld Device," 11 / 240,788, "Proximity Detector In Handheld Device," 11 / 620,702, "Using Ambient Light Sensor To Augment Proximity Sensor Output," 11 / 586,862, "Automated Response To And Sensing Of User Activity In Portable Devices," and 11 / 638,251, "Methods And Systems For Automatic Configuration Of Peripherals," which are incorporated herein by reference in their entireties. In some embodiments, the proximity sensor turns off and disables touchscreen 112 when the multifunction device is placed near the user's ear (e.g., when the user is making a phone call).
[0116] Device 100 also optionally includes one or more tactile output generators 167. FIG. 1A shows tactile output generators coupled to haptic feedback controller 161 in I / O subsystem 106. Tactile output generator 167 optionally includes one or more electroacoustic devices, such as speakers or other audio components, and / or electromechanical devices that convert energy into linear motion, such as 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). Contact intensity sensor 165 receives tactile feedback generation instructions from haptic feedback module 133 and generates 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, at least one tactile output generator sensor is located on the back of device 100, opposite touchscreen display 112, which is located on the front of device 100.
[0117] 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. Accelerometer 168 optionally functions as described in U.S. Patent Application Publication No. 20050190059, "Acceleration-based Theft Detection System for Portable Electronic Devices," and U.S. Patent Application Publication No. 20060017692, "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer," both of which are incorporated by reference herein in their entireties. In some embodiments, information is displayed on the touchscreen display in portrait or landscape orientation based on an analysis of data received from the one or more accelerometers. In addition to accelerometer(s) 168, device 100 optionally includes a magnetometer and a GPS (or GLONASS or other global navigation system) receiver for obtaining information about the location and orientation (e.g., vertical or horizontal) of device 100.
[0118] In some embodiments, software components stored in memory 102 include operating system 126, communication module (or instruction set) 128, touch / motion module (or instruction set) 130, graphics module (or instruction set) 132, text input module (or instruction set) 134, Global Positioning System (GPS) module (or instruction set) 135, and applications (or instruction set) 136. Additionally, in some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) stores device / global internal state 157, as shown in FIGS. 1A and 3. Device / global internal state 157 includes one or more of: active application state indicating which applications, if any, are currently active; display state indicating which applications, views, or other information occupy various regions of touchscreen display 112; sensor state including information obtained from the device's various sensors and input control devices 116; and location information regarding the device's location and / or orientation.
[0119] Operating system 126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, iOS, WINDOWS, or an embedded operating system such as VxWorks) includes various software components and / or drivers that control and manage general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitate communication between various hardware and software components.
[0120] Communications module 128 facilitates communication with other devices via one or more external ports 124 and also includes various software components for processing data received by RF circuitry 108 and / or external port 124. External port 124 (e.g., Universal Serial Bus (USB), FIREWIRE, etc.) is adapted to couple to other devices directly or indirectly via a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is the same as, similar to, and / or compatible with the 30-pin connector used on iPod® (trademark of Apple Inc.) devices.
[0121] Contact / motion module 130, optionally in conjunction with display controller 156, detects contact with touchscreen 112 and other touch-sensing devices (e.g., a touchpad or physical click wheel). Contact / motion module 130 includes various software components for performing various operations related to contact detection, such as determining whether contact occurs (e.g., detecting a finger-down event), determining the intensity of the contact (e.g., the force or pressure of the contact, or a surrogate for the force or pressure of the contact), determining whether there is contact movement and tracking the movement across the touch-sensitive surface (e.g., detecting one or more finger-drag events), and determining whether the contact has ceased (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 series 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., a single finger 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 the touchpad.
[0122] In some embodiments, contact / motion module 130 uses a set of one or more intensity thresholds to determine whether an action has been performed by a user (e.g., to determine whether a user has “clicked” on an icon). In some embodiments, at least a subset of the intensity thresholds are determined according to software parameters (e.g., the intensity thresholds are not determined by the activation threshold of a particular physical actuator, but can be adjusted without modifying the physical hardware of device 100). For example, the mouse “click” threshold of a trackpad or touchscreen display can be set to any of a wide range of pre-defined thresholds without modifying the trackpad or touchscreen display hardware. Additionally, in some implementations, a user of the device is provided with a software setting to adjust one or more of the set of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or by adjusting multiple intensity thresholds at once via a system-level click “intensity” parameter).
[0123] Contact / motion module 130 optionally detects gesture input by a user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different movements, timing, and / or intensities of detected contacts). Thus, gestures are optionally detected by detecting particular contact patterns. For example, detecting a finger tap gesture includes detecting a finger down event, followed by detecting a finger up (lift off) event at the same position (or substantially the same position) as the finger down event (e.g., the position of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger down event, followed by one or more finger drag events, followed by detecting a finger up (lift off) event.
[0124] Graphics module 132 includes various known software components that render and display graphics on touchscreen 112 or other display, including components that modify the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual properties) 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, characters, web pages, icons (such as user interface objects including soft keys), digital images, videos, animations, etc.
[0125] In some embodiments, graphics module 132 stores data representing graphics to be used. Each graphic is optionally assigned a corresponding code. Graphics module 132 receives one or more codes specifying the graphics to be displayed, including coordinate data and other graphic property data, as needed, from an application or the like, and then generates screen image data to output to display controller 156.
[0126] The tactile feedback module 133 includes various software components for generating instructions used by the tactile output generator(s) 167 to generate tactile outputs at one or more locations on the device 100 in response to a user's interaction with the device 100.
[0127] 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).
[0128] The GPS module 135 determines the location of the device and provides this information for use within various applications (e.g., to the phone 138 for use in location-based dialing, to the camera 143 as picture / video metadata, and to applications that provide location-based services such as a weather widget, a local yellow pages widget, and a maps / navigation widget).
[0129] 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 images and / or video; ● Image management module 144; ● Video player module, ● Music player module, ● 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, and a user-created widget 149-6; ● a widget creator module 150 for creating user-created widgets 149-6; ● Search module 151, a video and music player module 152 that combines a video player module and a music player module; ● Memo module 153, Map module 154, and / or ● Online video module 155.
[0130] 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, audio recognition, and audio duplication.
[0131] Contacts module 137, along with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, is optionally used to manage an address book or contact list (e.g., stored in memory 102 or in the application internal state 192 of contacts module 137 in memory 370), including adding name(s) to the address book, deleting name(s) from the address book, associating phone number(s), email address(es), street address(es), or other information with names, associating images with names, categorizing and sorting names, providing phone numbers or email addresses to initiate and / or facilitate communication by phone 138, video conferencing module 139, email 140, or IM 141, etc. used to manage the address book or contact list.
[0132] Telephone module 138, in conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, is optionally used to enter a series of characters corresponding to a telephone number, access one or more telephone numbers in contacts module 137, modify entered telephone numbers, dial individual telephone numbers, place calls, and disconnect and hang up when the call is complete. As previously mentioned, wireless communication optionally uses any of a number of communication standards, protocols, and technologies.
[0133] Video conferencing module 139 includes executable instructions to cooperate with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, display controller 156, optical sensor 164, optical sensor controller 158, contact / motion module 130, graphics module 132, text input module 134, contact module 137, and telephone module 138 to initiate, conduct, and terminate a video conference between a user and one or more other participants according to the user's commands.
[0134] Email client module 140, in conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, contains executable instructions for composing, 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.
[0135] Instant messaging module 141 includes executable instructions, in conjunction with RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, to enter a series of characters corresponding to an instant message, modify previously entered characters, send individual instant messages (e.g., using Short Message Service (SMS) or Multimedia Message Service (MMS) protocols for telephony-based instant messaging, or XMPP, SIMPLE, or IMPS for Internet-based instant messaging), receive instant messages, and view 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 telephony-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).
[0136] In conjunction with the RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, GPS module 135, map module 154, and music player module, the training support module 142 includes executable instructions to create workouts (e.g., with time, distance, and / or calorie burn goals), communicate with training sensors (sports devices), receive training sensor data, calibrate sensors used to monitor workouts, select and play music for workouts, and display, store, and transmit workout data.
[0137] Camera module 143, in conjunction with touchscreen 112, display controller 156, optical sensor(s) 164, optical sensor controller 158, contact / motion module 130, graphics module 132, and image management module 144, includes executable instructions to capture and store still images or video (including video streams) in memory 102, modify characteristics of the still images or video, or delete the still images or video from memory 102.
[0138] Image management module 144, in conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, and camera module 143, includes executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, labeling, deleting, presenting (e.g., in a digital slideshow or album), and storing still images and / or videos.
[0139] Browser module 147, in conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, contains executable instructions for browsing the Internet according to user commands, including retrieving, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.
[0140] The calendar module 148 includes executable instructions to cooperate with the RF circuitry 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, the email client module 140, and the browser module 147 to create, display, modify, and store calendars and data associated with the calendars (e.g., calendar items, to-do lists, etc.) according to user instructions.
[0141] Widget module 149, in conjunction with RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and browser module 147, optionally provides mini-applications (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) downloaded and used by a user, or mini-applications created by a user (e.g., user-created widget 149-6). In some embodiments, a widget includes an HTML (Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, a widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., Yahoo! Widgets).
[0142] The widget creator module 150, in conjunction with the RF circuitry 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, and the browser module 147, is optionally used by a user to create a widget (e.g., turn a user-specified portion of a web page into a widget).
[0143] The search module 151 includes executable instructions for working in conjunction with the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, and the text input module 134 to search for text, music, sound, images, video, and / or other files in the 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.
[0144] Video and music player module 152 includes executable instructions that, in conjunction with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, enable a user to download and play pre-recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, as well as executable instructions for displaying, presenting, or otherwise playing videos (e.g., on touchscreen 112 or on an external display connected via external port 124). In some embodiments, device 100 optionally includes the functionality of an MP3 player, such as an iPod (a trademark of Apple Inc.).
[0145] The notes module 153 includes executable instructions for working with the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, and the text input module 134 to create and manage notes, to-do lists, and the like according to user commands.
[0146] Map module 154, in conjunction with RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, GPS module 135, and browser module 147, is used to receive, display, modify, and store maps and data associated with maps (e.g., driving directions, data regarding businesses and other points of interest at or near a particular location, and other location-based data), optionally in accordance with user instructions.
[0147] Online video module 155, in conjunction with touchscreen 112, display controller 156, contact / motion 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, contains instructions that enable a user to access, browse for, receive (e.g., by streaming and / or downloading), and play (e.g., on the touchscreen or on an external display connected via external port 124) particular online videos, send emails with links to particular online videos, and otherwise manage online videos in one or more file formats, such as H.264. In some embodiments, instant messaging module 141 is used to send links to particular online videos, rather than email client module 140. For additional description of online video applications, see U.S. Provisional Patent Application No. 60 / 936,562, filed June 20, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," and U.S. Patent Application No. 11 / 968,067, filed December 31, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," the contents of which are incorporated herein by reference in their entireties.
[0148] The above-identified modules and applications each correspond to sets of executable instructions that perform one or more of the functions described above and methods described herein (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., sets of instructions) need not be implemented as respective software programs (e.g., computer programs (e.g., including instructions)), procedures, or modules; thus, in various embodiments, various subsets of these modules are optionally combined or otherwise reconfigured. For example, a video player module is optionally combined with a music player module into a single module (e.g., video and music player module 152 of FIG. 1A). In some embodiments, memory 102 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 102 optionally stores additional modules and data structures not described above.
[0149] In some embodiments, device 100 is a device in which operation of a predetermined set of functions on the device is performed solely 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.
[0150] 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, home menu, or 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.
[0151] 1B is a block diagram illustrating exemplary components for event processing, according to some embodiments. In some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) includes an event sorter 170 (e.g., within operating system 126) and a separate application 136-1 (e.g., any of applications 137-151, 155, 380-390 described above).
[0152] Event sorter 170 receives the event information and determines which application 136-1 to deliver the event information to and application view 191 for application 136-1. Event sorter 170 includes event monitor 171 and 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 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(s) are currently active, and application internal state 192 is used by event sorter 170 to determine which application view(s) to deliver the event information to.
[0153] 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 the user to return to a previous state or view of application 136-1, and redo / undo cues of previous actions taken by the user.
[0154] Event monitor 171 receives event information from peripherals interface 118. The event information includes information about sub-events (e.g., a user touch as part of a multi-touch gesture on touch-sensitive display 112). 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 112 or a touch-sensitive surface.
[0155] In some embodiments, event monitor 171 sends requests 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., receipt of an input above a predetermined noise threshold and / or for more than a predetermined duration).
[0156] In some embodiments, the event sorter 170 also includes a hit view determination module 172 and / or an active event recognizer determination module 173 .
[0157] Hit view determination module 172 provides software procedures that determine where a sub-event occurred within one or more views when touch-sensitive display 112 displays more than one view. A view consists of the controls and other elements that a user can see on the display.
[0158] 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 individual applications) in which touches are detected optionally correspond to programmatic levels within the application's programmatic or view hierarchy. For example, the lowest-level view in which a touch is detected is optionally referred to as the hit view, and the set of events that are recognized as appropriate inputs is optionally determined based at least in part on the hit view of the initial touch that initiates the touch gesture.
[0159] 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 an initiating sub-event occurs (e.g., the first sub-event in a series of sub-events that form an event or potential event). Once a hit view is identified by hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source as the touch or input source identified as the hit view.
[0160] Active event recognizer determination module 173 determines which view(s) in the view hierarchy should receive a particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, active event recognizer determination module 173 determines that all views that contain the physical location of the sub-events are actively participating views, and therefore determines that all actively participating views should receive a particular sequence of sub-events. In other embodiments, even if a touch sub-event is completely confined to the area associated with one particular view, views higher in the hierarchy still remain actively participating views.
[0161] Event dispatcher module 174 dispatches 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 event information to the event recognizers determined by active event recognizer determination module 173. In some embodiments, event dispatcher module 174 stores event information in an event queue, which is retrieved by individual event receivers 182.
[0162] In some embodiments, operating system 126 includes event sorter 170. Alternatively, application 136-1 includes event sorter 170. In still 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.
[0163] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each containing instructions for processing 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, an individual 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 or a higher-level object from which application 136-1 inherits methods and other properties. In some embodiments, individual event handlers 190 include one or more of data updater 176, object updater 177, GUI updater 178, and / or event data 179 received from event sorter 170. Event handler 190 optionally utilizes or invokes data updater 176, object updater 177, or GUI updater 178 to update application internal state 192. Alternatively, one or more of the application views 191 include one or more respective 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 individual application views 191.
[0164] A separate event recognizer 180 receives event information (e.g., event data 179) from event sorter 170 and identifies events 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 metadata 183 and at least a subset of event delivery instructions 188 (optionally including sub-event delivery instructions).
[0165] 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 called the device's posture).
[0166] 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, sub-events within Events (187-1 and / or 187-2) include, for example, touch start, touch end, touch movement, touch cancellation, 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 on a displayed object relative to a predetermined phase (touch start), a first lift-off (touch end) relative to the predetermined phase, a second touch on a displayed object relative to the predetermined phase (touch start), and a second lift-off (touch end) relative to the predetermined phase. 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) on the displayed object to a predetermined stage, a movement of the touch across the touch-sensitive display 112, and a lift-off of the touch (touch end). In some embodiments, the event also includes information about one or more associated event handlers 190.
[0167] In some embodiments, event definition 186 includes definitions of events for individual user interface objects. In some embodiments, event comparator 184 performs a hit test to determine which user interface objects are associated with the sub-event. For example, if a touch is detected on touch-sensitive display 112 in an application view in which three user interface objects are displayed on touch-sensitive display 112, event comparator 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a 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.
[0168] In some embodiments, the definition of an individual event 187 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.
[0169] 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, after which it 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.
[0170] 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 how event recognizers 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 the view or programmatic hierarchy.
[0171] In some embodiments, an individual event recognizer 180 activates an event handler 190 associated with an event when one or more specific 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) 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 predetermined process.
[0172] 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.
[0173] 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 a video player module. 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.
[0174] In some embodiments, event handler(s) 190 include or have 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.
[0175] 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, although not all of them are initiated on a touchscreen. For example, mouse movements and mouse button presses, contact movements such as tapping, dragging, scrolling on a touchpad, optionally coordinated with single or multiple keyboard presses or holds, pen stylus input, device movement, verbal commands, detected eye movements, biometric input, and / or any combination thereof, optionally utilize as inputs corresponding to sub-events that define the event to be recognized.
[0176] FIG. 2 illustrates portable multifunction device 100 having touchscreen 112, according to some embodiments. The touchscreen optionally displays one or more graphics within user interface (UI) 200. In this embodiment, as well as other embodiments described below, a user may select one or more of the graphics by performing a gesture on the graphics, for example, using one or more fingers 202 (not drawn to scale) or one or more styluses 203 (not drawn to scale). In some embodiments, selection of 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, upward and / or downward), and / or rolling (right to left, left to right, upward and / or downward) of a finger in contact with device 100. In some implementations or situations, accidental contact with a graphic does not select the graphic, for example, if the gesture corresponding to selection is a tap, a swipe gesture sweeping over an application icon optionally does not select the corresponding application.
[0177] Device 100 also optionally includes one or more physical buttons, such as a "home" button or menu button 204. As previously mentioned, menu button 204 is optionally used to navigate to any application 136 within a set of applications running on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key within a GUI displayed on touchscreen 112.
[0178] In some embodiments, device 100 includes touchscreen 112, menu button 204, pushbutton 206 for powering the device on / off and locking the device, volume control button(s) 208, subscriber identity module (SIM) card slot 210, headset jack 212, and external docking / charging port 124. Pushbutton 206 is optionally used to power the device on / off by pressing and holding the button down for a predetermined period of time, to lock the device by pressing and releasing the button before the predetermined time has elapsed, and / or to unlock the device or initiate the unlocking process. In alternative embodiments, device 100 also accepts verbal input via microphone 113 to activate or deactivate certain functions. Device 100 also optionally includes one or more contact intensity sensors 165 for detecting the intensity of a contact on touchscreen 112 and / or one or more tactile output generators 167 for generating a tactile output for a user of device 100.
[0179] 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 interconnecting these components. Communication bus 320 optionally includes circuitry (sometimes called a chipset) that interconnects and controls communication between system components. Device 300 includes input / output (I / O) interface 330, including 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 and a touchpad 355, a tactile output generator 357 that generates tactile output on device 300 (e.g., similar to tactile output generator(s) 167 described above with reference to FIG. 1A ), and sensors 359 (e.g., light, acceleration, proximity, touch-sensing, 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, 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, whereas memory 102 of portable multifunction device 100 (FIG. 1A) optionally does not store these modules.
[0180] Each of the above-identified elements of 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 computer programs (e.g., including an instruction set or instructions) need not be implemented as separate software programs (e.g., computer programs (e.g., including instructions)), procedures, or modules; thus, in various embodiments, various subsets of these modules are optionally combined or otherwise reconfigured. 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.
[0181] Attention is now optionally directed to user interface embodiments, for example, as implemented on portable multifunction device 100.
[0182] 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) 402 for wireless communication(s), such as cellular and Wi-Fi signals; ● Time 404, ● Bluetooth indicator 405, ● Battery status indicator 406; A tray 408 with icons of frequently used applications, such as: o An icon 416 for the phone module 138, labeled "Phone", which optionally includes an indicator 414 of the number of missed calls or voicemail messages; o An icon 418 for 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 o An icon 422 for the video and music player module 152, also called the iPod (trademark of Apple Inc.) module 152, labeled "iPod"; 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 in 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"; icon 444 of the Notes module 153, labeled "Notes"; and o A settings application or module icon 446 labeled "Settings" that provides access to settings for the device 100 and its various applications 136.
[0183] 4A are merely exemplary. For example, icon 422 of video and music player module 152 is labeled "Music" or "Music Player." Other labels are optionally used for various application icons. In some embodiments, the label for an individual application icon includes the name of the application that corresponds to the individual application icon. In some embodiments, the label for a particular application icon is different from the name of the application that corresponds to that particular application icon.
[0184] 4B shows an example user interface on a device (e.g., device 300 of FIG. 3 ) that has touch-sensitive surface 451 (e.g., tablet or touchpad 355 of FIG. 3 ) that is separate from display 450 (e.g., touchscreen display 112). Device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of sensors 359) that detect the intensity of a contact on touch-sensitive surface 451, and / or one or more tactile output generators 357 that generate a tactile output for a user of device 300.
[0185] Although some of the following examples are given with reference to input on touchscreen display 112 (which combines a touch-sensitive surface and a display), in some embodiments, the device detects input on a touch-sensitive surface that is separate from the display, as shown in FIG. 4B . In some embodiments, the touch-sensitive surface (e.g., 451 in FIG. 4B ) has a primary axis (e.g., 452 in FIG. 4B ) that corresponds to a primary axis (e.g., 453 in FIG. 4B ) on the display (e.g., 450). According to these embodiments, the device detects contact with touch-sensitive surface 451 (e.g., 460 and 462 in FIG. 4B ) at locations that correspond to respective locations on the display (e.g., in FIG. 4B , 460 corresponds to 468 and 462 corresponds to 470). In this way, 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 when the touch-sensitive surface is separate from the display. It should be understood that similar methods are optionally used for the other user interfaces described herein.
[0186] Additionally, while the following examples are given primarily with reference to finger input (e.g., finger contact, finger tap gesture, finger swipe gesture), it should be understood that in some embodiments, one or more of the finger inputs are replaced with input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture is optionally replaced by a mouse click (e.g., instead of a contact) followed by movement of a cursor along the path of the swipe (e.g., instead of movement of the contact). As another example, a tap gesture is optionally replaced by a mouse click (e.g., instead of detecting a contact and then ceasing contact detection) while the cursor is positioned 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 a mouse and finger contacts are optionally used simultaneously.
[0187] FIG. 5A shows an exemplary personal electronic device 500. Device 500 includes a main body 502. In some embodiments, device 500 can include some or all of the functionality described with respect to devices 100 and 300 (e.g., FIGS. 1A-4B ). In some embodiments, device 500 has a touch-sensitive display screen 504, hereafter touchscreen 504. Alternatively, or in addition to touchscreen 504, device 500 has a display and a touch-sensitive surface. Similar to devices 100 and 300, in some embodiments, touchscreen 504 (or the touch-sensitive surface) optionally includes one or more intensity sensors that detect the intensity of contact (e.g., touches) being applied. The one or more intensity sensors of touchscreen 504 (or the touch-sensitive surface) can provide output data representing the intensity of the touch. The user interface of device 500 can respond to touches based on their intensity, meaning that touches of different intensities can invoke different user interface actions on device 500.
[0188] For exemplary techniques for detecting and processing touch intensity, see, for example, related applications International Patent Application No. PCT / US2013 / 040061, filed May 8, 2013, entitled "Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application," published as International Publication No. WO / 2013 / 169849, and International Patent Application No. PCT / US2013 / 069483, filed November 11, 2013, entitled "Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships," published as International Publication No. WO / 2014 / 105276, each of which is incorporated herein by reference in its entirety.
[0189] In some embodiments, device 500 has one or more input mechanisms 506 and 508. Input mechanisms 506 and 508, if included, may be physical. Examples of physical input mechanisms include push buttons and rotatable mechanisms. In some embodiments, device 500 has one or more attachment mechanisms. Such attachment mechanisms, if included, may allow device 500 to be attached to, for example, hats, eyewear, earrings, necklaces, shirts, jackets, bracelets, watch bands, chains, pants, belts, shoes, wallets, backpacks, etc. These attachment mechanisms allow device 500 to be worn by a user.
[0190] FIG. 5B illustrates an exemplary personal electronic device 500. In some embodiments, device 500 can include some or all of the components described with respect to FIGS. 1A, 1B, and 3. Device 500 has a bus 512 operably coupling an I / O section 514 to one or more computer processors 516 and memory 518. I / O section 514 can be connected to a display 504, which can have touch-sensing components 522 and, optionally, an intensity sensor 524 (e.g., a contact intensity sensor). Additionally, I / O section 514 can be connected to a communication unit 530 that receives application and operating system data using Wi-Fi, Bluetooth, near field communication (NFC), cellular, and / or other wireless communication technologies. Device 500 can include input mechanisms 506 and / or 508. Input mechanism 506 is optionally, for example, a rotatable input device or a depressible and rotatable input device. In some embodiments, input mechanism 508 is optionally a button.
[0191] In some embodiments, input mechanism 508 is optionally a microphone. Personal electronic device 500 optionally includes various sensors, such as a GPS sensor 532, an accelerometer 534, an orientation sensor 540 (e.g., a compass), a gyroscope 536, a motion sensor 538, and / or combinations thereof, all of which may be operably connected to I / O section 514.
[0192] The memory 518 of the personal electronic device 500 may include one or more non-transitory computer-readable storage media for storing computer-executable instructions that, when executed by, for example, one or more computer processors 516, can cause the computer processors to perform the techniques described below, including processes 700-1300, 1500-1800, and 2000 (FIGS. 7-13, 15-18, and 20A-20B). A computer-readable storage medium may be any medium that can tangibly contain or store computer-executable instructions used by or in connection with an instruction execution system, apparatus, or device. In some embodiments, the storage medium is a transient computer-readable storage medium. In some embodiments, the storage medium is a non-transitory computer-readable storage medium. Non-transitory computer-readable storage media may include, but are not limited to, magnetic storage, optical storage, and / or semiconductor storage. Examples of such storage devices include magnetic disks, optical disks based on CD, DVD, or Blu-ray technology, and persistent solid-state memory such as flash, solid-state drives, etc. Personal electronic device 500 is not limited to the components and configuration of Figure 5B and may include other or additional components in multiple configurations.
[0193] As used herein, the term "affordance" refers to a user-interactive graphical user interface object, optionally displayed on a display screen of device 100, 300, and / or 500 (FIGS. 1A, 3, and 5A-5B). For example, images (e.g., icons), buttons, and text (e.g., hyperlinks) each, optionally, constitute an affordance.
[0194] As used herein, the term “focus selector” refers to an input element that indicates the current portion of the user interface with which the user is interacting. In some implementations involving a cursor or other location marker, the cursor acts as the “focus selector,” such that when input (e.g., a press input) is detected on a touch-sensitive surface (e.g., touchpad 355 of FIG. 3 or touch-sensitive surface 451 of FIG. 4B) while the cursor is positioned 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 that allows direct interaction with user interface elements on the touchscreen display (e.g., touch-sensitive display system 112 of FIG. 1A or touchscreen 112 of FIG. 4A), a detected contact on the touchscreen acts as the “focus selector,” such that when input (e.g., a press input by contact) is detected at the location of a particular user interface element (e.g., a button, window, slider, or other user interface element) on the touchscreen display, 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 without a corresponding cursor movement or contact movement on the touchscreen display (e.g., by using the tab key or arrow keys to move focus from one button to another), and 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 the focus selector takes, the focus selector is generally a user interface element (or 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 the element of the user interface through which the user intends to interact).For example, the location of a focus selector (e.g., a cursor, touch, 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).
[0195] As used herein and in the claims, the term "characteristic intensity" of a contact refers to a characteristic of that contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on a plurality of intensity samples. The characteristic intensity is optionally based on a predetermined number of intensity samples, i.e., a set of intensity samples collected during a predetermined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) associated with a predetermined event (e.g., after detecting the contact, before detecting lift-off of the contact, before or after detecting the start of contact movement, before detecting the end of the contact, before or after detecting an increase in the intensity of the contact, and / or before or after detecting a decrease in the intensity of the contact). The characteristic intensity of the contact is optionally based on one or more of the maximum intensity of the contact, the mean intensity of the contact, the average intensity of the contact, the top 10 percentile intensity of the contact, half the maximum intensity of the contact, 90 percent of the maximum intensity of the contact, etc. In some embodiments, the duration of the contact is used in determining the characteristic intensity (e.g., when the characteristic intensity is an average of the intensity of the contact over time). In some embodiments, the characteristic intensity is compared to a set of one or more intensity thresholds to determine whether an action is performed by the user. For example, the set of one or more intensity thresholds optionally includes a first intensity threshold and a second intensity threshold. In this example, a contact having a characteristic intensity that does not exceed the first threshold results in a first action, a contact having a characteristic intensity above the first intensity threshold but not above the second intensity threshold results in a second action, and a contact having a characteristic intensity above the second threshold results in a third action. In some embodiments, the comparison between the characteristic intensity and the one or more thresholds is not used to determine whether to perform the first action or the second action, but rather to determine whether to perform one or more actions (e.g., whether to perform an individual action or to refrain from performing an individual action).
[0196] As used herein, an "installed application" refers to a software application that has been downloaded onto an electronic device (e.g., device 100, 300, and / or 500) and is ready to run (e.g., opened) on the device. In some embodiments, a downloaded application becomes an installed application by an installation program that extracts program portions from a downloaded package and integrates the extracted portions with the computer system's operating system.
[0197] As used herein, the terms "open application" or "running application" refer to a software application that has retained state information (e.g., as part of device / global internal state 157 and / or application internal state 192). An open or running application is, optionally, any one of the following types of application: ● the active application currently displayed on the display screen of the device on which the application is being used; Background applications (or background processes) that are not currently displayed, but for which one or more processes are being processed by one or more processors; and A suspended or hibernated application that is not running but has state information stored in memory (volatile and non-volatile, respectively) and that can be used to resume execution of the application.
[0198] As used herein, the term "closed application" refers to a software application that does not have retained state information (e.g., state information for a closed application is not stored in the device's memory). Thus, closing an application includes stopping and / or removing the application process for the application and removing state information for the application from the device's memory. Generally, opening a second application during a first application does not close the first application. When a second application is displayed and the first application is stopped from displaying, the first application becomes a background application.
[0199] 5C shows an exemplary diagram of a communication session between electronic devices 500A, 500B, and 500C. Devices 500A, 500B, and 500C are similar to electronic device 500 and each share one or more data connections 510, such as an Internet connection, a Wi-Fi connection, a cellular connection, a short-range communication connection, and / or any other such data connection or network, with each other to facilitate real-time communication of audio and / or video data between the respective devices over a period of time. In some embodiments, the exemplary communication session may include a shared data session in which data is communicated from one or more of the electronic devices to other electronic devices to enable simultaneous output of individual content at the electronic devices. In some embodiments, the exemplary communication session may include a videoconferencing session in which audio and / or video data is communicated between devices 500A, 500B, and 500C so that users of the respective devices can engage in real-time communication using the electronic devices.
[0200] 5C, device 500A represents an electronic device associated with user A. Device 500A is in communication (via data connection 510) with devices 500B and 500C associated with users B and C, respectively. Device 500A includes a camera 501A used to capture video data of the communication session and a display 504A (e.g., a touchscreen) used to display content associated with the communication session. Device 500A also includes other components, such as a microphone (e.g., 113) for recording audio for the communication session and a speaker (e.g., 111) for outputting audio for the communication session.
[0201] Device 500A displays, via display 504A, communications UI 520A, a user interface that facilitates a communications session (e.g., a video conferencing session) between device 500B and device 500C. Communications UI 520A includes video feed 525-1A and video feed 525-2A. Video feed 525-1A is a representation of video data captured at device 500B (e.g., using camera 501B) and communicated from device 500B to devices 500A and 500C during the communications session. Video feed 525-2A is a representation of video data captured at device 500C (e.g., using camera 501C) and communicated from device 500C to devices 500A and 500B during the communications session.
[0202] Communication UI 520A includes camera preview 550A, which is a representation of video data captured at device 500A via camera 501A. Camera preview 550A represents to user A the expected video feed of user A that will be displayed on each of devices 500B and 500C.
[0203] The communications UI 520A includes one or more controls 555A that control one or more aspects of the communications session. For example, the controls 555A may include controls for muting the audio of the communications session, changing the camera view of the communications session (e.g., changing which camera is used to capture video of the communications session, adjusting the zoom value), ending the communications session, applying visual effects to the camera view of the communications session, and activating one or more modes associated with the communications session. In some embodiments, the one or more controls 555A are optionally displayed on the communications UI 520A. In some embodiments, the one or more controls 555A are displayed separately from the camera preview 550A. In some embodiments, the one or more controls 555A are displayed over at least a portion of the camera preview 550A.
[0204] 5C, device 500B represents an electronic device associated with user B, who is in communication with devices 500A and 500C (via data connection 510). Device 500B includes a camera 501B used to capture video data for the communication session and a display 504B (e.g., a touchscreen) used to display content associated with the communication session. Device 500B also includes other components, such as a microphone (e.g., 113) for recording audio for the communication session and a speaker (e.g., 111) for outputting audio for the communication session.
[0205] Device 500B displays, via touchscreen 504B, a communications UI 520B similar to communications UI 520A of device 500A. Communications UI 520B includes video feed 525-1B and video feed 525-2B. Video feed 525-1B is a representation of video data captured at device 500A (e.g., using camera 501A) and communicated from device 500A to devices 500B and 500C during the communications session. Video feed 525-2B is a representation of video data captured at device 500C (e.g., using camera 501C) and communicated from device 500C to devices 500A and 500B during the communications session. Communications UI 520B also includes camera preview 550B, which is a representation of video data captured at device 500B via camera 501B, and one or more controls 555B, similar to control 555A, for controlling one or more aspects of the communications session. Camera preview 550B represents to user B the expected video feed of user B as it would appear on each device 500A and 500C.
[0206] 5C, device 500C represents an electronic device associated with user C, who is in communication with devices 500A and 500B (via data connection 510). Device 500C includes a camera 501C used to capture video data of the communication session and a display 504C (e.g., a touchscreen) used to display content associated with the communication session. Device 500C also includes other components, such as a microphone (e.g., 113) for recording audio for the communication session and a speaker (e.g., 111) for outputting audio for the communication session.
[0207] Device 500C displays, via touchscreen 504C, a communication UI 520C similar to communication UI 520A of device 500A and communication UI 520B of device 500B. Communication UI 520C includes video feed 525-1C and video feed 525-2C. Video feed 525-1C is a representation of video data captured at device 500B (e.g., using camera 501B) and communicated from device 500B to devices 500A and 500C during the communication session. Video feed 525-2C is a representation of video data captured at device 500A (e.g., using camera 501A) and communicated from device 500A to devices 500B and 500C during the communication session. Communications UI 520C also includes camera preview 550C, which is a representation of video data captured at device 500C via camera 501C, and one or more controls 555C for controlling one or more aspects of the communications session, similar to controls 555A and 555B. Camera preview 550C represents to user C the expected video feed of user C that will be displayed on each of devices 500A and 500B.
[0208] While the diagram shown in FIG. 5C depicts a communication session between three electronic devices, a communication session can be established between two or more electronic devices, and the number of devices participating in a communication session can change as electronic devices join or leave the communication session. For example, if one of the electronic devices leaves the communication session, the audio and video data from the device that stopped participating in the communication session is no longer represented on the participating devices. For example, if device 500B stops participating in the communication session, data connection 510 between devices 500A and 500C and data connection 510 between devices 500C and 500B no longer exist. In addition, device 500A does not include video feed 525-1A, and device 500C does not include video feed 525-1C. Similarly, when a device joins a communication session, a connection is established between the joining device and the existing devices, and video and audio data is shared among all devices so that each device can output data communicated from the other devices.
[0209] The embodiment shown in Figure 5C represents a diagram of a communication session between multiple electronic devices, including the exemplary communication sessions shown in Figures 6A-6EQ and 14A-14AG. In some embodiments, the communication sessions shown in Figures 6A-6EQ and 14A-14AG include two or more electronic devices, even if other electronic devices involved in the communication session are not shown in the diagrams.
[0210] Attention is now directed to embodiments of user interfaces (“UIs”) and related processes implemented on an electronic device such as portable multifunction device 100, device 300, or device 500.
[0211] Figures 6A-6EQ illustrate exemplary user interfaces for managing a shared content session, according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes of Figures 7-13 and 17-18. In some embodiments, the user interfaces of Figures 6A-6EQ can be used to illustrate the processes described below with respect to Figures 15-16.
[0212] This disclosure describes embodiments for managing a shared content session (also referred to as a shared session) in which individual content may be output simultaneously on multiple devices participating in the shared content session. In some embodiments, the individual content is screen sharing content. For example, the displayed screen content of a host device is shared with participants in the shared content session, and participants can view the screen content of the host device (the shared device, or the device whose screen content is being shared) in real time on their respective devices, including any changes to the displayed screen content. In some embodiments, the individual content is synchronized content that is output simultaneously on each device of participants in the shared content session. For example, each device of the participants separately accesses the individual content (e.g., videos, movies, TV shows, and / or songs) from a remote server and / or local memory and is synchronized in its respective output of the content, such that the content is output simultaneously on each device (e.g., via an application local to each device) as each device separately accesses the individual content from the remote server and / or local memory. In some embodiments, the respective devices exchange information (e.g., via a server) to facilitate the synchronization. For example, each device can share content playback state and / or playback location information, as well as indications of local commands (e.g., play, pause, stop, fast forward, and / or rewind) to implement commands for the output of content on the other device. Sharing playback state and / or playback location information is more efficient and effective for synchronizing content at each device because the host device does not send content to each device, but rather sends smaller data packets containing playback state and / or playback location information.Additionally, each respective device outputs content at a size and quality appropriate to the respective device and its connectivity (e.g., data connection conditions, such as data transmission and / or processing speed), thereby providing a more customized and synchronized playback experience on each of the respective devices. In some embodiments, an application (or "app") is available (e.g., downloaded and / or installed) on each device to enable the devices to participate in the shared content session.
[0213] Unless otherwise specified, as discussed herein, the terms “share,” “sharing,” or “shared” are generally used to refer to a situation in which content (e.g., screen sharing content and / or synchronized content) is or can be output (e.g., viewed and / or played) simultaneously on multiple devices participating in a shared content session. Unless otherwise specified, these terms do not require that the content being “shared” be transmitted from any particular device participating in the shared content session to any of the other devices with which the content is being shared. In some embodiments, the content being shared in a shared content session is content that is accessed separately by each respective device, e.g., from a remote server or another source other than one of the devices participating in the shared content session. For example, in some embodiments, when media content such as a movie is being played on a device participating in a shared content session, the movie is said to be shared with the participants, even if each participant accesses (e.g., from a movie application) and plays the movie separately (but simultaneously) from the other participants in the shared content session. In some embodiments, screen share content is shared with participants in a shared content session by transmitting image data from the host device representing the content displayed on the display screen of the host device to other devices participating in the shared content session.
[0214] In some embodiments, one or more audio channels are active (e.g., open) during a shared content session, allowing participants in the shared content session to talk to each other in real time while the shared content session is ongoing, and optionally while content is being shared via the shared content session (e.g., screen shared content and / or synchronized content). In some embodiments, one or more video channels are open (e.g., via a video conferencing application local to each device), allowing participants in the shared content session to engage in live video communication (e.g., video chat) while the shared content session is ongoing, and optionally while content is being shared via the shared content session. Various aspects of these embodiments, and further details of shared content sessions, are described below with reference to the figures.
[0215] 6A illustrates exemplary devices for participating in a shared content session, according to some embodiments. Specifically, these devices include John's device 6000A (e.g., a smartphone) and Jane's device 6000B (e.g., a smartphone), which are shown side-by-side to illustrate the concurrent state of each device, including the user interface and inputs on each device. John's device 6000A includes a display 6001A, one or more cameras 6002A, one or more microphones 6003A (also referred to as microphones 6003A), and one or more speakers 6007A (e.g., similar to speaker 111). Jane's device 6000B includes a display 6001B, one or more cameras 6002B, one or more microphones 6003B (also referred to as microphones 6003B), and one or more speakers 6007B (e.g., similar to speaker 111). John's device 6000A is similar to Jane's device 6000B. In the following description, reference numbers may include the letter "A" to refer to elements of John's device, the letter "B" to refer to elements of Jane's device, or no letter to refer to elements of either or both devices. For example, devices 6000A and 6000B may be referenced using reference number 6000, i.e., reference number 6000 may be used herein to refer to John's device 6000A or Jane's device 6000B, or both. Other elements sharing a common reference number may be similarly referenced. For example, displays 6001A and 6001B, cameras 6002A and 6002B, microphones 6003A and 6003B, and speakers 6007A and 6007B may be referenced using reference numbers 6001, 6002, 6003, and 6007, respectively. In some embodiments, device 6000 includes one or more features of devices 100, 300, and / or 500.
[0216] In embodiments provided herein, John's device 6000A can be described as performing a set of functions associated with a shared content session, and Jane's device 6000B can be described as performing a different set of functions associated with a shared content session. These descriptions are not intended to limit the functions performed by each device, but rather are provided to illustrate various aspects and embodiments of a shared content session. Thus, unless otherwise specified, functions described as being performed by John's device 6000A can similarly be performed by Jane's device 6000B and the devices of other participants in the shared content session. Similarly, functions described as being performed by Jane's device 6000B can similarly be performed by John's device 6000A and the devices of other participants in the shared content session, unless otherwise specified.
[0217] 6A-6L illustrate an example embodiment in which John initiates a shared content session with members of a group called "Mountainers." In FIG. 6A, devices 6000A and 6000B are not in a shared content session (the shared content session is not active, and the devices are not currently participating in any shared content session). John's device 6000A displays message interface 6004A via display 6001A. Jane's device 6000B is not displaying any content (e.g., device 6000B is locked and / or inactive). In FIG. 6A, message interface 6004A shows a group message conversation, including message 6004A-1, between participants in a group called "Mountainers." Message display area 6004A-3 displays message 6004A-1. Message interface 6004A includes the Mountaineers group logo, which is displayed in header area 6004A-2. John's device 6000A detects input 6005 (eg, tap input, tap gesture) in header region 6004A-2 via display 6001A and, in response, displays options 6006 as shown in FIG. 6B.
[0218] In FIG. 6B , John's device 6000A, in response to detecting input 6005, expands header region 6004A-2 to display options 6006. The options include phone option 6006-1, video conference option 6006-2, share option 6006-3, and status option 6006-4. Phone option 6006-1 is selectable to call members of the climber group. Video conference option 6006-2 is selectable to start a video conference session with members of the climber group. Share option 6006-3 is selectable to start a shared content session with members of the climber group. Status option 6006-4 is selectable to view the climber group's status card. In FIG. 6B , John's device 6000A detects input 6008 on share option 6006-3 and, in response, starts a shared content session with members of the climber group.
[0219] 6C , John's device 6000A initiates a shared content session with members of the climber group. John's device 6000A displays a control area 6015A that provides information associated with the active shared content session between John's device 6000A and the other participants in the climber group and includes selectable options for controlling the operation, parameters, and / or settings of the active shared content session. In addition, John's device 6000A displays a dynamic graphic 6010A within a message interface 6004A. The dynamic graphic 6010A is displayed in the message display area along with message 6004A-1, indicating that a shared content session has started and including the status of the shared content session (e.g., four people have been invited to join). The dynamic graphic 6010A dynamically updates based on detected changes to various parameters of the shared content session and, in some embodiments, is selectable to perform various functions associated with the shared content session. In some embodiments, the dynamic graphic 6010A is displayed in the message interface 6004A even if the shared content session is initiated from an application other than a message application (e.g., from a video conferencing application). In some embodiments, the dynamic graphic 6010A can include different information, such as the names and / or logos of groups participating in the shared content session, the names of the participants, the activity occurring in the shared content session, or other relevant information. In some embodiments, the dynamic graphic 6010A can include selectable options to join or leave the shared content session. The content displayed within the dynamic graphic 6010A is specific to John's device 6000A. For example, in the embodiment shown in FIG. 6C , the dynamic graphic 6010A does not include a selectable “join” option because John's device 6000A has already joined the shared content session in response to a request to initiate the shared content session.
[0220] Control area 6015A provides information associated with the shared content session. As shown in FIG. 6C , at least some of this information is displayed in status area 6015A-1, which includes identifiers 6015A-2 representing the names and logos of groups participating in the shared content session. Status area 6015A-1 also includes status 6015A-3, which indicates that four participants have currently been invited to join the shared content session. Control area 6015A also includes various options selectable to control the operation, parameters, and / or settings of the shared content session. For example, message option 6015A-4, in some embodiments, is selectable to view a message conversation (e.g., message interface 6004A) between participants in the shared content session. Speaker option 6015A-5, in some embodiments, is selectable to enable or disable audio output (e.g., on speaker 6007A) on John's device 6000A (or to enable or disable speaker mode on John's device 6000A) over the shared content session. Microphone option 6015A-6, in some embodiments, is selectable to enable or disable an audio channel for the shared content session for John's device 6000A. Microphone option 6015A-6 is currently shown in an enabled state (e.g., bold) to indicate that microphone 6003A is enabled and that the audio channel for John's device 6000A is enabled for the shared content session. Video option 6015A-7, in some embodiments, is selectable to start a videoconferencing session with participants in the shared content session, view an ongoing videoconferencing session, enable / disable the camera, and / or select a different camera to be used for the shared content session. Share option 6015A-8, in some embodiments, is selectable to initiate a screen share option in which the contents of John's screen are shared with the participants in the shared content session.Leave option 6015A-9, in some embodiments, is selectable to allow John (or John's device 6000A) to leave the shared content session, optionally without terminating the shared content session for the other participants in the shared content session. In some embodiments, share option 6015A-8 is selectable to view and / or change various media playback settings.
[0221] In some embodiments, the appearance of the share option 6015A-8 is used to indicate the playback status of the content and / or playback settings for media output during the shared content session. For example, in some embodiments, the share option 6015A-8 is shown in bold (or otherwise visually highlighted) when content is being output via the shared content session (e.g., when screen shared content or synchronized content is being output), and is not bold (or otherwise visually highlighted) when screen shared or synchronized content is not being output during the shared content session. In some embodiments, the share option 6015A-8 is bold or not bold to indicate various playback settings, such as settings for determining whether to prompt the user to share selected media with participants in the shared content session, as described in more detail below. In some embodiments, the share option 6015A-8 can be selected to change playback settings, as described in more detail below.
[0222] In response to John initiating the shared content session, the members of the climbers group receive an invitation to join the shared content session. Because Jane is a member of the climbers group, Jane's device 6000B displays an invitation 6012 that includes information about the shared content session and invites Jane to join the shared content session.
[0223] As shown in FIG. 6C , John's device 6000A detects the home gesture 6014, and Jane's device 6000B detects input 6016 on the invitation 6012. In response to detecting the home gesture 6014, John's device 6000A displays the home screen 6018 and dismisses the control area 6015A. In some embodiments, the control area 6015A is dismissed automatically when no input is detected in the control area for a predetermined amount of time (e.g., 1 second, 3 seconds, or 5 seconds). In some embodiments, when the device is participating in a shared content session and the control area is not displayed, the device displays a visual indication of the ongoing shared content session as a reminder to the user that a shared content session is in progress. As shown in FIG. 6D , John's device 6000A displays a share pill 6020A in the status area of the home screen 6018. The share pill 6020A is selectable for the display control area 6015A.
[0224] In response to detecting input 6016, Jane's device 6000B displays a message interface 6004B including a message 6004B-1 for the ongoing group conversation and a dynamic graphic 6010B displayed in message display area 6004B-3. Dynamic graphic 6010B is similar to dynamic graphic 6010A, except that the information presented in dynamic graphic 6010B is specific to Jane's device 6000B, just as the information presented in dynamic graphic 6010A is specific to John's device 6000A. For example, because Jane's device has not yet joined a shared content session, dynamic graphic 6010B includes a selectable join option 6010B-1 to join the shared content session. Additionally, dynamic graphic 6010B indicates that one person has joined the shared content session.
[0225] In Figure 6D, Jane's device 6000B detects a scroll input 6022 and, in response, scrolls the message presented in message display area 6004B-3, as shown in Figure 6E. In Figure 6E, message display area 6004B-3 is updated to show message display area 6004B-3 scrolled in response to input 6022, including an indication that dynamic graphic 6010B has scrolled out of view. Now that dynamic graphic 6010B has scrolled out of view, Jane's device 6000B expands header region 6004B-2 to include dynamic content 6024 representing the content of dynamic graphic 6010B, including join option 6024-1, which is similar to join option 6010B-1. In some embodiments, header region 6004B-2 expands to include dynamic content 6024 in response to a scroll gesture in the opposite direction from input 6022. In some embodiments, even when the header area is not expanded (e.g., as shown in FIG. 6D), the join option 6024-1 (or the "leave" option, if desired) is persistently displayed in the header area 6004B-2. Jane's device 6000B detects input 6026 on the join option 6024-1 and, in response, joins the shared content session.
[0226] 6F , John's device 6000A displays notification 6028 indicating that Jane has joined the shared content session. In some embodiments, notifications (such as notification 6028) are displayed briefly and then automatically dismissed after a predetermined amount of time. In some embodiments, notifications associated with the shared content session (e.g., notifications generated by a system-level application for hosting the shared content session) are displayed for a shorter period of time than standard notifications (e.g., text message notifications and / or email notifications) displayed on device 6000. For example, a shared content session notification may be displayed for two seconds, while a standard notification is displayed for six seconds. In some embodiments, notifications associated with the shared content session are displayed with an animation effect, whereby the notification appears to animate from the share pill 6020 or the screen share pill 6021.
[0227] After joining the shared content session, Jane's device 6000B displays control area 6015B and displays message interface 6004B with dynamic graphic 6010B updated based on Jane joining the shared content session. For example, dynamic graphic 6010B indicates that two people are currently active in the shared content session (John and Jane have joined). Control area 6015B is similar to control area 6015A and has been updated in FIG. 6F to indicate that two people have joined the shared content session.
[0228] 6G, Ryan has now joined the shared content session. In response, Jane's device 6000B updates dynamic graphic 6010B and control area 6015B to indicate that three people are active in the shared content session. Because control area 6015B is displayed, Jane's device 6000B suppresses the display of a notification announcing that Ryan has joined the shared content session. In some embodiments, Jane's device 6000B displays a notification that Ryan has joined the shared content session.
[0229] Referring to John's device 6000A in FIG. 6G , because the display of notification 6028 has not expired, John's device 6000A updates notification 6028 to indicate that Ryan has also joined. In some embodiments, notifications may be combined when appropriate. For example, instead of displaying separate notifications that Jane has joined and that Ryan has joined, the two notifications are combined into a single notification (by updating notification 6028) so that John's device 6000A does not display multiple notifications. Multiple notifications can be distracting and unhelpful to John and cause unnecessary work for device 6000A. In some embodiments, notifications that become irrelevant (e.g., outdated) before they are displayed are not displayed. For example, if Ken joined after Ryan but before notification 6028 was updated, instead of displaying the updated notification shown in FIG. 6G , John's device 6000A would have an updated notification 6028 to indicate that Jane and two others have joined the shared content session.
[0230] In some embodiments, John's device 6000A displays group status information (e.g., a group card) in response to input 6030 on notification 6028. In response to detecting input 6032 on shared pill 6020A, John's device 6000A displays control area 6015A, as shown in FIG. 6H.
[0231] 6H, John's device 6000A displays control area 6015A, which has been updated since it was last displayed (in response to two people joining) to indicate that three people are active in the shared content session. Microphone 6003A is enabled (in some embodiments, by default), as indicated by microphone option 6015A-6. Thus, when John speaks to the group of climbers (as indicated by audio input 6035A), John's device 6000A receives John's voice as audio input and shares (e.g., transmits) the audio input with the other participants in the shared content session. Thus, Jane's device 6000B (as well as other devices participating in the shared content session) generates audio output 6037B of John's audio (e.g., using speaker 6007B). A speaker (e.g., speaker 6007B) on Jane's device 6000B is enabled (in some embodiments, by default) and outputs audio of John's voice, as indicated by speaker option 6015B-5. In this way, participants in the shared content session can talk to each other during the shared content session.
[0232] In response to detecting input 6034 on message option 6015A-4, John's device 6000A displays message interface 6004A, as shown in Figure 61. In Figure 61, Jane speaks to the group of climbers, as shown by audio input 6035B, and audio is output at the participant device (e.g., using speaker 6007A), as shown by audio output 6037A. John's device 6000A detects input 6036 on control area status area 6015A-1 and, in response, displays group card interface 6038A, as shown in Figure 6J.
[0233] In Figure 6J, Ryan speaks to the group of climbers (e.g., using speaker 6007), as indicated by audio output 6037A and 6037B on John and Jane's devices 6000. John's device 6000A displays group card interface 6038A in response to input 6036, and in Figure 6K, the group card interface is scrolled to display additional content in response to scroll input 6039. In some embodiments, John's device 6000A displays group card interface 6038A in response to an input for a notification (e.g., input 6030 for notification 6028).
[0234] The group card interface 6038A provides information about the climber group and content output during the group's current and past shared content sessions, including identification information 6038A-1, such as a logo, name, picture, etc. The group card interface 6038A includes status information 6040A (including a leave option 6040-1 selectable to leave the shared content session), a list of climber group members 6042A, and an add contact option 6044A selectable to add a contact to the climber group. The list of members 6042A includes the names of the other group members along with status information 6046 for each member. For example, in FIG. 6J , Ryan and Jane are shown as active participants in the shared content session. Ken is shown as invited because he has not yet accepted the invitation to join the shared content session. The group card interface also includes a reminder option 6048, which is displayed to group members who are not participating in the shared content session and may be selected to generate a reminder (e.g., a ring, an alert, and / or a notification) on the member's device to remind the member to join the shared content session. The group card interface 6038A also includes a copy option 6050A, which may be selected to copy a link that may be sent to contacts to invite them to join the climber group. The group card interface 6038A also includes a content history 6052A that shows content that has previously been output (or, in some embodiments, is currently being output) in a shared content session with the group. The group card interface 6038A also includes preferred (e.g., favorite) content 6054A that was output during the shared content session. The group card interface content history 6052A and preferred content 6054A include an indication 6056 of the member who initiated the sharing of individual content or, in some embodiments, the member who favorited individual content.
[0235] In Figure 6K, Ken has joined the shared content session. Accordingly, Ken's member list 6042-1 and status 6046-1 are updated to indicate that Ken is active in the shared content session. Additionally, control area 6015B and dynamic graphic 6010B are updated on Jane's device 6000B to indicate the change in the parameters of the shared content session in response to Ken joining. In some embodiments, John and Jane's devices 6000 display a notification that Ken has joined the shared content session.
[0236] In Figure 6L, John's device 6000A, in response to detecting input 6058 in Figure 6K, displays control area 6015A and message interface 6004A with dynamic graphic 6010A. Control area 6015A and dynamic graphic 6010A, as well as the control area and dynamic graphic on Jane's device 6000B, are updated to indicate that Ken has joined the shared content session.
[0237] 6M-6X show exemplary user interfaces of an embodiment in which Jane initiates screen sharing with a group of climbers during a shared content session. In FIG. 6M, Jane's device 6000B displays browser interface 6060 and detects input 6062 on share pill 6020B. In FIG. 6N, Jane's device 6000B displays control area 6015B in response to input 6062 and detects input 6064 on share option 6015B-8 to initiate screen sharing with the group of climbers.
[0238] In Figure 6O, Jane's device 6000B has replaced share option 6015B-8 with countdown 6066, which counts down the amount of time until Jane's device 6000B shares the contents of its screen with the group of climbers. In some embodiments, in response to detecting input 6068 on countdown 6066, Jane's device 6000B cancels the request to begin screen sharing and returns to the interface shown in Figure 6N. In some embodiments, in response to detecting input on countdown 6066, Jane's device 6000B displays a notification with an option to confirm canceling the screen sharing request. If input 6068 is not detected, Jane's device 6000B begins sharing the contents of its screen at the end of the countdown, as shown in Figure 6P.
[0239] At the end of the countdown, Jane's device 6000B begins sharing the contents of its screen with the members of the climber group and updates the control area 6015B to indicate the screen sharing status of Jane's device 6000B, as shown in FIG. 6P. For example, the status area 6015B-1 updates to indicate that the climber group is viewing Jane's screen, and the share option 6015B-8 changes appearance to indicate that the screen content of Jane's device 6000B is being shared (e.g., output) to participants in the shared content session (e.g., members of the climber group). In some embodiments, the share option 6015B-8 is shown in bold when content other than the screen shared content is being output for members participating in the shared content session (e.g., when media such as a program and / or music is being output as part of the shared content session).
[0240] John's device 6000A displays a screen sharing window 6070 and a notification 6072 indicating that Jane has started sharing the contents of her device's screen. In some embodiments, the notification 6072 automatically disappears after a predetermined amount of time. The screen sharing window 6070 is a real-time representation of the content currently displayed on Jane's device 6000B. Thus, because Jane's device 6000B is currently displaying the browser interface 6060, the screen sharing window 6070 includes a representation 6060' of the browser interface 6060. The screen sharing window 6070 is displayed on top of the home screen 6018 such that John's device 6000A displays the screen sharing window 6070 with the home screen 6018 in the background. In some embodiments, the screen sharing window 6070 automatically appears on top of the user interface currently displayed on John's device 6000A when the screen sharing begins. For example, if John's device 6000A is displaying message interface 6004A when Jane's device 6000B begins sharing its screen, screen sharing window 6070 will appear over the message interface.
[0241] The screen sharing window 6070 is displayed as a window that is optionally overlaid on another user interface (e.g., John's home screen 6018) and can be moved separately from the user interface in which it is displayed. In some embodiments, such a window is referred to herein as a picture-in-picture window, or "PiP." In some embodiments, the PiP can include shared content, such as screen sharing content and / or synchronized content. In some embodiments, the PiP can include content independent of the shared content session, such as a video feed from a video conference (although in some embodiments, such a PiP may be displayed in association with the shared content session).
[0242] Figure 6P shows input 6074 to notification 6072 on John's device 6000A. Figure 6P also shows scroll input 6076 on browser interface 6060 and home input 6078 on home affordance 6077 on Jane's device 6000B. Ryan speaks to the group of climbers, as indicated by audio outputs 6037A and 6037B on John's and Jane's devices 6000B.
[0243] As shown in FIG. 6Q, in response to detecting scroll input 6078, Jane's device 6000B scrolls browser interface 6060, and in response to detecting home input 6078, Jane's device 6000B dismisses control area 6015B. In some embodiments, Jane's device 6000B automatically dismisses control area 6015B after a predetermined amount of time. In some embodiments, control area 6015B is displayed for a longer period than standard notifications (e.g., email notifications and / or text message notifications). For example, control area 6015 is displayed until intentionally dismissed by the user. When a device is sharing the contents of its screen and the control area is dismissed (e.g., hidden), the device displays screen sharing pill 6021B, as shown on Jane's device 6000B in FIG. 6Q. In some embodiments, screen sharing pill 6021B has a different appearance than sharing pill 6020B, but is similar in functionality. For example, the screen share pill 6021B serves as a reminder to the user that a shared content session is in progress, but a different appearance indicates to the user that the user's device is sharing content on its screen via a shared content session. In some embodiments, the screen share pill 6021B can be selected to display the control area 6015B.
[0244] In FIG. 6Q, John's device 6000A displays control area 6015A in response to input 6074. To provide an unobstructed view of control area 6015A and screen content 6070, John's device 6000A automatically moves the position of screen sharing window 6070 on display 6001A. Because screen sharing window 6070 is a real-time representation of the contents of Jane's screen, as Jane scrolls the browser interface (via input 6076), screen sharing window 6070 is automatically scrolled to match the scroll position of browser interface 6060 on Jane's device 6000B. This is indicated by the scrolled appearance of representation 6060′ in screen sharing window 6070 in FIG. 6Q.
[0245] In FIG. 6Q , John's device detects input 6080 on microphone option 6015A-6 to mute microphone 6003A and detects drag input 6082 to move the position of screen sharing window 6070 on display 6001A. Jane's device 6000B detects home input 6084 on home affordance 6077B and dismisses browser interface 6060 and displays home screen 6088, as shown in FIG. 6R . In some embodiments, a home gesture (e.g., similar to home input 6078 or home input 6084) causes John's device 6000A to dismiss control region 6015A. In some embodiments, a home gesture (optionally detected after the control region is dismissed) causes John's device 6000A to dismiss screen sharing window 6070 (e.g., hide its display).
[0246] In some embodiments, some notifications are suppressed while control area 6015 is displayed. For example, in FIG. 6Q, Jane's device 6000B displays notification 6086 indicating that Ryan has left the shared content session, but a similar notification does not appear on John's device 6000A because control area 6015A is displayed.
[0247] In FIG. 6R, John's device 6000A displays a screen sharing window 6070 having a moved position on the display in response to the drag input 6082. The screen sharing window 6070 is also updated to indicate that Jane has navigated to home screen 6088 by displaying a representation 6088' of Jane's home screen 6088. In some embodiments, notifications from Jane's device 6000B are displayed in the screen sharing window 6070 on John's device 6000A. For example, in FIG. 6R, the screen sharing window 6070 includes a representation 6086' of notification 6086. In some embodiments, the notification is not shared in the screen sharing window 6070. In some embodiments, the screen sharing window 6070 can be resized in response to various inputs, such as, for example, pinch and / or unpinch gestures. In some embodiments, John's device 6000A stores the moved and / or resized position of the screen sharing window 6070 so that when content (e.g., screen sharing content and / or media content output during the shared content session) is shared with John's device 6000A in the future, John's device 6000A displays the shared content in the moved and / or resized position.
[0248] John's device 6000A continues to display control area 6015A, and John speaks while his microphone for the shared content session (e.g., microphone 6003A) is muted, as indicated by mute glyph 6090. Thus, John's audio is not communicated in the shared content session, as indicated by the lack of output audio at Jane's device 6000B. John's device 6000A detects input 6092 on screen sharing window 6070.
[0249] In Figure 6R, Jane's device 6000B continues to display notification 6086 while input 6094 is detected on health application icon 6096. In Figure 6S, Jane's device 6000B launches the health application in response to input 6094 and displays health interface 6102. Accordingly, John's device 6000A updates the display of screen sharing window 6070 to show representation 6102' of health interface 6102. John's device 6000A also displays chrome 6100, which includes identifier 6100-1 and extension icon 6100-2. Identifier 6100-1 indicates Jane's name and avatar and indicates that screen sharing window 6070 represents content from Jane's device 6000B. Expand icon 6100-2 is selectable (e.g., in response to input 6104) to expand screen sharing window 6070, for example, to an expanded display state (e.g., a full-screen display state or a state that uses all of the screen outside of a portion of the screen designated for system status information and / or system control). In some embodiments, screen sharing window 6070 expands in response to a tap on screen sharing window 6070 when chrome 6100 is not displayed, rather than requiring a subsequent tap on expand icon 6100-2.
[0250] 6S, John's device 6000A removes control area 6015A and displays share pill 6020A. John's device 6000A displays share pill 6020A and Jane's device 6000B displays screen share pill 6021B, indicating that John's device is participating in a shared content session without sharing its screen, and that Jane's device 6000B is participating in a shared content session while sharing its screen with the participants in the shared content session.
[0251] John's device 6000A displays notification 6098 in response to detecting that John is speaking while his microphone is muted. Notifications similar to notification 6098 and notification 6086 were suppressed (e.g., stored in a queue) on John's device 6000A while control area 6015A was displayed. However, because control area 6015A is no longer displayed in FIG. 6S, John's device 6000A displays the previously suppressed, undated (e.g., expired or irrelevant) notifications. Notifications 6098 and 6086 (displayed on Jane's device) are not stale because the conditions triggering their display remain true and, optionally, the time allotted for displaying the notifications has not expired. In some embodiments, rather than displaying all undated notifications, John's device 6000A displays notifications based on the priority attributed to each notification, such that the notification with the highest priority is displayed first for a predetermined amount of time and then dismissed. Notifications with the next highest priority are then displayed and then dismissed. 6S, notification 6098 has a higher priority than the notification announcing that a participant is leaving the shared content session. Thus, when John's device 6000A hides control area 6015A, it displays notification 6098 but does not display the notification announcing that Ryan has left the shared content session. In some embodiments, the priority of notifications stored in the queue may change over time (e.g., notifications may become stale). For example, if the time allotted to display a notification expires before the notification is displayed, the notification is not displayed.
[0252] In some embodiments, notifications are prioritized at different tiers based on the type of notification. For example, notifications triggered by a user action are attributed the highest level of priority (e.g., Tier 1). Examples of user actions that trigger Tier 1 notifications include interactions with elements in control area 6015 (e.g., audio routing, microphone on / off, camera on / off, local screen sharing on / off). A notification indicating that the microphone is muted is, in some embodiments, attributed a medium level of priority (e.g., Tier 2). Notification 6098 is an example of a Tier 2 notification. In some embodiments, notifications that are automatically triggered based on activity within a shared content session are attributed a lower level of priority (e.g., Tier 3). Examples of tier 2 notifications include account updates (e.g., announcing that a user has joined a shared content session), notifications that content is being played only for the user of the device, notifications for applications that support the shared content session, play actions, queue actions, remote screen sharing actions, and reminder notifications related to the shared content session (e.g., a reminder that members of a shared content session are still playing content after a user has stopped playing private content).
[0253] In some embodiments, some types of notifications alternate when they are displayed. For example, notifications that content is "playing only for me," notifications associated with apps that support shared content sessions, play actions, queue actions, remote screen sharing actions, and reminder notifications related to shared content sessions alternate and, in some embodiments, expire after three seconds. In some embodiments, some notifications can be coalesced and, optionally, do not expire. For example, if five users have joined a shared content session, a single notification can be displayed indicating that one user and four others have joined.
[0254] In some embodiments, notifications related to play actions, queue actions, and remote share actions have a higher priority than reminder notifications related to shared content sessions. In some embodiments, notifications for apps that support shared content sessions have a higher priority than notifications related to play actions, queue actions, and remote share actions. In some embodiments, notifications that content is "play just for me" have a higher priority than notifications for apps that support shared content sessions. In some embodiments, notifications related to account updates have a higher priority than notifications that content is "play just for me."
[0255] In response to detecting input 6104, John's device 6000A displays screen sharing window 6070 in an expanded, expanded, and / or full-screen state (or using all of the screen outside of the portion of the screen designated for system status information and / or system control), thereby presenting a full-screen view of Jane's screen. Control area 6015A reappears when screen sharing window 6070 is expanded, indicating in control area status area 6015A-1 that Jane is sharing her screen with members of the climber group. However, it should be understood that while Jane is sharing the content of her screen, the shared content may be manipulated on the individual devices viewing her screen's content in the shared content session. For example, while John is viewing Jane's screen-shared content in an expanded or full-screen state, other participants in the shared content session may view Jane's screen-shared content in a smaller window or PiP (similar to screen sharing window 6070 in FIG. 6S), having different display locations on their respective devices.
[0256] Because the content of Jane's screen is displayed in full-screen view, some of the content from Jane's device 6000B overlaps with some of the content displayed on John's device 6000A. For example, representation 6021B' of screen sharing pill 6021B appears layered below clock 6106 in the status bar area of John's device 6000A. In some embodiments, other information in the status bar area of John's device (the area containing the clock and other relevant information, such as battery charge indication and signal strength indicator) overlaps with the corresponding area from Jane's device. In some embodiments, home affordance 6077B from Jane's device overlaps with home affordance 6077A on John's device. In some embodiments, the content from Jane's screen is shown blurred and below the content in John's status area. For example, representation 6021B' is shown blurred (indicated by hatching) and below John's clock 6106. In some embodiments, Jane's content is shown displayed over John's content, with or without blurring.
[0257] In FIG. 6T, Jane's device 6000B continues to display the health interface 6102 and dismisses the notification 6086 (e.g., after a predetermined amount of time has passed). On John's device 6000A, the control region 6015A is dismissed to display the chrome 6100 in response to the input 6108, as shown in FIG. 6U. In FIG. 6U, John's device 6000A dismisses the control region 6015A and displays the chrome 6100 and the sharing pill 6020A, including the identifier 6100-1 and the collapse icon 6100-3. The collapse icon 6100-3 can be selected to collapse the screen sharing window 6070 from the full-screen view in FIG. 6U to the PiP view shown in FIG. 6S. In some embodiments, a home gesture (e.g., a swipe up on the home affordance 6077A) causes the device 6000A to collapse the screen sharing window 6070 from the full-screen view to the PiP view. The sharing pill 6020A is displayed over the screen shared content from Jane's device (e.g., a representation 6021B' of the screen sharing pill 6021B) in a manner similar to that described above with respect to the clock 6106. John's device 6000A dismisses the chrome 6100 in response to the input 6110. In some embodiments, John's device 6000A automatically dismisses the chrome 6100 after displaying the chrome for a predetermined amount of time.
[0258] In Figure 6U, Jane's device 6000B detects input 6112 on screen sharing pill 6021B and, in response, displays control area 6015B, as shown in Figure 6V. Control area status area 6015B-1 indicates that the climbers are viewing Jane's screen. Jane can select share option 6015B-8 (which has a bold appearance indicating screen sharing is active) to stop sharing her screen with the group of climbers. Jane can select leave option 6015B-9 to leave the shared content session and end screen sharing with the group of climbers.
[0259] 6V, John's device 6000A displays privacy indicators 6118 indicating that particular components of John's device (e.g., camera 6002A and / or microphone 6003A) are currently or recently in use. Privacy indicators 6118 may be displayed in embodiments shown in other figures described herein.
[0260] FIG. 6W shows John and Jane's devices 6000 when Jane selects share option 6015B-8 in response to input 6116. Specifically, Jane's device 6000B stops sharing the contents of its screen with the Climbers group, as indicated by the unbolded appearance of share option 6015B-8 and the updated control area status area 6015B-1, and notes that three people are now active in the Climbers group (as a result of Ryan leaving the shared content session). John's device 6000A stops displaying the screen sharing window 6070 (returning to the home screen 6018) and displays a notification 6120 indicating that Jane has stopped sharing her screen. A share pill 6020A indicates that John's device 6000A is still participating in the shared content session, even though Jane's screen sharing has stopped. In some embodiments, John's device 6000A displays a group card interface 6038A in response to input 6122 to the notification 6120.
[0261] 6X shows John and Jane's devices 6000 when Jane selects leave option 6015B-9 in response to input 6114. Specifically, Jane's device 6000B stops sharing its screen content with the group of climbers and leaves (e.g., disconnects or stops participating), as indicated by not displaying control area 6015B or sharing pill 6020B. John's device 6000A stops displaying screen sharing window 6070 and displays notification 6124 indicating that Jane has left the shared content session. Although Jane's device has left the shared content session, John's device continues to remain in the shared content session, as indicated by sharing pill 6020A.
[0262] 6Y-6DG illustrate various embodiments related to sharing media in a shared content session. In FIG. 6Y, John's device 6000A displays home screen 6018 while a shared content session is not active. John's device 6000A detects input 6126 selecting TV app icon 6128 and, in response, displays TV app interface 6130 of FIG. 6Z. TV app interface 6130 includes media options 6134 and 6138 that indicate media content, such as shows or movies, that are available for viewing on John's device 6000A. In some embodiments, glyph 6132 is displayed to indicate media content that can be shared through the shared content session; i.e., the media content can be played on John's device 6000A while the media content is simultaneously playing on other devices participating in the shared content session, as discussed in more detail below.
[0263] 6Z, John's device 6000A detects input 6136 to select media option 6138, which is a TV program named "TV Show 3" that can be played on John's device 6000A but cannot be shared in a shared content session. In some embodiments, the program may not be able to be shared because, for example, the application used to play the media content does not support playback in a shared content session or the content is restricted from being shared in a shared content session.
[0264] In response to input 6136, John's device 6000A displays a launch interface 6140 for launching playback of the media content selected in TV app interface 6130. As shown in FIG. 6AA, launch interface 6140 includes a media identification 6142, such as the name of the program, and optionally, other details of the selected media content. The launch interface includes a play option 6144 that includes text prompting the user to play the selected media content. The launch interface also includes icons or badges 6146 that indicate various aspects of the selected media content.
[0265] In FIG. 6AA, John's device 6000A detects input 6148 of play option 6144 and, in response, begins playing "TV Program 3," as shown in FIG. 6AB. As playback of "TV Program 3" begins, John's device displays media 6150A, playback controls 6152A, and chrome 6154. Media 6150A displays the media content being played on John's device 6000A. Media 6150A can have a fixed position in an extended or full-screen view (or use all of the screen outside of a portion of the screen designated for system status information and / or system control), or can be displayed as a PiP that can be positioned over var...
Claims
1. 1. A computer system configured to communicate with one or more output generation components and one or more input devices, comprising: one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; 11. A computer system comprising: Displaying a first user interface via the one or more output generation components includes displaying in the first user interface: a view of the content of the shared content session overlaid on a background user interface; and simultaneously displaying a first representation of a participant of a real-time communication session, the first representation of the participant of the real-time communication session being displayed at a first discrete location relative to the view of the content of the shared content session; receiving, while displaying the first user interface, a request to move the view of the content within the first user interface; responsive to receiving the request to move the view of the content, moving the view of the content in accordance with the request, moving the first representation of the participant such that a first representation of the participant is displayed in the first discrete location relative to the view of the content of the shared content session; detecting a request to cease displaying the view of the content of the shared content session on the background user interface after moving the view of the content and the first representation of the participants; a computer system including instructions for, in response to detecting the request to cease displaying the view of the content of the shared content session on the background user interface, displaying, via the one or more output generation components, a view of the content that is not displayed on the background user interface without displaying a representation of the participants at the first individual location for the view of the content of the shared content session.
2. the one or more programs responsive to detecting the request to cease displaying the view of the content of the shared content session on the background user interface, displaying, via the one or more output generation components, a second representation of the participants at a second individual location and / or a first size relative to the view of the content of the shared content session; the second individual location for the view of the content of the shared content session is different from the first individual location for the view of the content of the shared content session; The computer system of claim 1 , wherein the first size is different from a size of the first representation of the participant displayed at the first individual location relative to the view of the content of the shared content session.
3. 3. The computer system of claim 1, wherein the background user interface is a system user interface.
4. 3. The computer system of claim 1, wherein the background user interface is an application user interface.
5. the one or more programs detecting, in the first user interface, a request to change the background user interface from a first background user interface to a second background user interface different from the first background user interface while simultaneously displaying the view of the content of the shared content session overlaid on the background user interface and the first representation of the participants at the first individual location relative to the view of the content of the shared content session; in response to detecting the request to change the background user interface from the first background user interface to the second background user interface; the view of the content of the shared content session overlaid on the second background user interface; 3. The computer system of claim 1, further comprising instructions for simultaneously displaying the first representation of the participant, the first representation of the participant being displayed at the first separate location relative to the view of the content of the shared content session.
6. the one or more programs detecting a request to perform an action in the background user interface while displaying the view of the content of the shared content session overlaying the background user interface; 3. The computer system of claim 1, further comprising instructions for, in response to detecting the request to perform an action in the background user interface, performing the action in the background user interface while maintaining display of the view of the content of the shared content session overlaying the background user interface.
7. The computer system of claim 1 or 2, wherein the request to cease displaying the view of the content of the shared content session on the background user interface comprises a request to display a first user interface of a video communication application.
8. the one or more programs 10. The computer system of claim 7, further comprising instructions for displaying, while displaying the first user interface of the video communication application, a plurality of representations of participants in the real-time communication session within the first user interface of the video communication application.
9. The computer system of claim 1 or 2, wherein the request to cease displaying the view of the content of the shared content session via the background user interface comprises a request to display the content in an extended display mode.
10. the one or more programs In response to detecting the request to display the content in an enhanced display mode, Displaying the content in a second user interface in an extended display mode; 10. The computer system of claim 9, further comprising instructions for displaying a third representation of the participants in the real-time communication session overlaid on the second user interface simultaneously with the content in the second user interface in the expanded display mode.
11. the one or more programs receiving a request to move the third representation of the participant of the real-time communication session while displaying the third representation of the participant at a first location on the second user interface; 11. The computer system of claim 10, further comprising instructions for, in response to receiving the request to move the third representation of the participant, displaying the third representation of the participant of the real-time communication session at a second location on the second user interface, the second location being different from the first location.
12. the one or more programs receiving an indication of a change in an activity level of a second participant in the real-time communication session while displaying the third representation of the participant in the real-time communication session on the second user interface; 11. The computer system of claim 10, further comprising instructions for, in response to receiving the indication of a change in an activity level of a second participant in the real-time communication session, displaying a representation of the second participant in the real-time communication session.
13. the one or more programs while displaying, within the first user interface, the view of the content of the shared content session overlaid on the background user interface and the first representation of the participants of the real-time communication session at the first individual location relative to the view of the content of the shared content session; receiving an indication of a change in an activity level of a third participant in the real-time communication session; 3. The computer system of claim 1, further comprising instructions for, in response to receiving the indication of a change in activity level of the third participant in the real-time communication session, displaying a representation of the third participant in the real-time communication session at the first separate location relative to the view of the content of the shared content session overlaid on the background user interface.
14. the one or more programs receiving, while displaying, in the first user interface, the view of the content of the shared content session overlaid on the background user interface and the first representation of the participants of the real-time communication session at the first individual location relative to the view of the content of the shared content session, a first indication that a participant of the real-time communication session is not providing video to the real-time communication session; 3. The computer system of claim 1, further comprising instructions for ceasing display of the first representation of a participant in the real-time communication session in response to receiving the first indication that the participant in the real-time communication session is not providing video to the real-time communication session.
15. the one or more programs receiving, in the first user interface, an indication that the content has been removed from the shared content session while displaying the view of the content of the shared content session overlaid on the background user interface; in response to receiving the indication that the content has been removed from the shared content session, ceasing to display the view of the content; 3. The computer system of claim 1, further comprising instructions for displaying, in the first user interface, a fourth representation of the participants in the real-time communication session overlaid on the background user interface.
16. the one or more programs receiving a request to move the fourth representation of the participant of the real-time communication session in the first user interface; 16. The computer system of claim 15, further comprising instructions, in response to receiving the request to move the fourth representation of the participant of the real-time communication session, to move the fourth representation of the participant of the real-time communication session in accordance with the request to move the fourth representation of the participant of the real-time communication session.
17. the one or more programs receiving a second indication that a participant in the real-time communication session is not providing video to the real-time communication session while displaying the fourth representation of the participant in the real-time communication session in the first user interface; 16. The computer system of claim 15, further comprising instructions for ceasing display of the fourth representation of the participant in the real-time communication session in response to receiving the second indication that the participant in the real-time communication session is not providing video to the real-time communication session.
18. the one or more programs after ceasing to display the fourth representation of the participant of the real-time communication session; receiving an indication that a participant in the real-time communication session is providing video to the real-time communication session; 20. The computer system of claim 17, further comprising instructions for displaying a fifth representation of a participant in the real-time communication session in response to receiving the indication that a participant in the real-time communication session is providing video to the real-time communication session.
19. 20. The computer system of claim 18, wherein the fifth representation of a participant in the real-time communication session comprises a representation of a participant who has caused the indication to be displayed that the participant in the real-time communication session is providing video to the real-time communication session.
20. the one or more programs detecting an input via the one or more input devices corresponding to a selection of the first representation of the participant of the real-time communication session; 3. The computer system of claim 1, further comprising instructions for displaying a second user interface of a video communication application for the real-time communication session in response to detecting the input corresponding to a selection of the first representation of the participant of the real-time communication session.
21. the one or more programs detecting an input via the one or more input devices while displaying, in the first user interface, the view of the content of the shared content session overlaid on the background user interface and the first representation of the participants of the real-time communication session at the first individual location relative to the view of the content of the shared content session; In response to detecting the input, pursuant to a determination that the input is directed to the view of the content, performing an action associated with the view of the content; 3. The computer system of claim 1, further comprising instructions for displaying a third user interface of a video communication application for the real-time communication session in accordance with a determination that the input is directed to the first representation of the participant.
22. the one or more programs receiving, while displaying the first user interface, a first request to resize the view of the content within the first user interface; In response to receiving the first request to change the size of the view of the content, resizing the view of the content in accordance with the request to resize the view of the content; The computer system of claim 1 or 2, further comprising instructions for resizing the first representation of the participant.
23. the one or more programs receiving, while displaying the first user interface, a second request to resize the view of the content within the first user interface; 3. The computer system of claim 1, further comprising instructions, in response to receiving the second request to resize the view of the content, to resize the view of the content in accordance with the request to resize the view of the content without resizing the first representation of the participant.
24. 1. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more output generating components and one or more input devices, the one or more programs comprising: Displaying a first user interface via the one or more output generation components includes displaying in the first user interface: a view of the content of the shared content session overlaid on a background user interface; and simultaneously displaying a first representation of a participant of a real-time communication session, the first representation of the participant of the real-time communication session being displayed at a first discrete location relative to the view of the content of the shared content session; receiving, while displaying the first user interface, a request to move the view of the content within the first user interface; responsive to receiving the request to move the view of the content, moving the view of the content in accordance with the request, moving the first representation of the participant such that the first representation of the participant is displayed in the first discrete location relative to the view of the content of the shared content session; detecting a request to cease displaying the view of the content of the shared content session on the background user interface after moving the view of the content and the first representation of the participants; a first individual location for displaying the view of the content of the shared content session on the background user interface, the ...
25. 1. A method comprising: A computer system in communication with one or more output generating components and one or more input devices, comprising: Displaying a first user interface via the one or more output generation components includes displaying in the first user interface: a view of the content of the shared content session overlaid on a background user interface; displaying the first user interface, the first representation including simultaneously displaying a first representation of a participant of a real-time communication session, the first representation of the participant of the real-time communication session being displayed at a first discrete location relative to the view of the content of the shared content session; receiving a request to move the view of the content within the first user interface while displaying the first user interface; in response to receiving the request to move the view of the content, moving the view of the content in accordance with the request, moving the first representation of the participant such that the first representation of the participant is displayed in the first discrete location relative to the view of the content of the shared content session; detecting a request to cease displaying the view of the content of the shared content session on the background user interface after moving the view of the content and the first representation of the participants; in response to detecting the request to cease displaying the view of the content of the shared content session on the background user interface, displaying, via the one or more output generation components, a view of the content that is not displayed on the background user interface without displaying a representation of the participants at the first individual location for the view of the content of the shared content session.
26. the one or more programs responsive to detecting the request to cease displaying the view of the content of the shared content session on the background user interface, displaying, via the one or more output generation components, a second representation of the participants at a second individual location and / or a first size relative to the view of the content of the shared content session; the second individual location for the view of the content of the shared content session is different from the first individual location for the view of the content of the shared content session; 25. The non-transitory computer-readable storage medium of claim 24, wherein the first size is different from a size of the first representation of the participant displayed at the first individual location relative to the view of the content of the shared content session.
27. 27. The non-transitory computer-readable storage medium of claim 24 or 26, wherein the background user interface is a system user interface.
28. 27. The non-transitory computer-readable storage medium of claim 24 or 26, wherein the background user interface is an application user interface.
29. the one or more programs detecting, in the first user interface, a request to change the background user interface from a first background user interface to a second background user interface different from the first background user interface while simultaneously displaying the view of the content of the shared content session overlaid on the background user interface and the first representation of the participants at the first individual location relative to the view of the content of the shared content session; in response to detecting the request to change the background user interface from the first background user interface to the second background user interface; the view of the content of the shared content session overlaid on the second background user interface; 27. The non-transitory computer-readable storage medium of claim 24 or 26, further comprising instructions for simultaneously displaying the first representation of the participant, the first representation of the participant being displayed at the first separate location relative to the view of the content of the shared content session.
30. the one or more programs detecting a request to perform an action in the background user interface while displaying the view of the content of the shared content session overlaying the background user interface; 27. The non-transitory computer-readable storage medium of claim 24 or 26, further comprising instructions for, in response to detecting the request to perform an action in the background user interface, performing the action in the background user interface while maintaining display of the view of the content of the shared content session overlaying the background user interface.
31. 27. The non-transitory computer-readable storage medium of claim 24 or 26, wherein the request to cease displaying the view of the content of the shared content session on the background user interface comprises a request to display a first user interface of a video communications application.
32. the one or more programs 32. The non-transitory computer-readable storage medium of claim 31, further comprising instructions for displaying, while displaying the first user interface of the video communication application, a plurality of representations of participants in the real-time communication session within the first user interface of the video communication application.
33. 27. The non-transitory computer-readable storage medium of claim 24 or 26, wherein the request to cease displaying the view of the content of the shared content session via the background user interface comprises a request to display the content in an extended display mode.
34. the one or more programs In response to detecting the request to display the content in an enhanced display mode, Displaying the content in a second user interface in an extended display mode; 34. The non-transitory computer-readable storage medium of claim 33, further comprising instructions for displaying a third representation of the participants in the real-time communication session overlaid on the second user interface concurrently with the content in the second user interface in the expanded display mode.
35. the one or more programs receiving a request to move the third representation of the participant of the real-time communication session while displaying the third representation of the participant at a first location on the second user interface; 35. The non-transitory computer-readable storage medium of claim 34, further comprising instructions for, in response to receiving the request to move the third representation of the participant, displaying the third representation of the participant of the real-time communication session at a second location on the second user interface, the second location being different from the first location.
36. the one or more programs receiving an indication of a change in an activity level of a second participant in the real-time communication session while displaying the third representation of the participant in the real-time communication session on the second user interface; 35. The non-transitory computer-readable storage medium of claim 34, further comprising instructions for, in response to receiving the indication of a change in an activity level of a second participant in the real-time communication session, displaying a representation of the second participant in the real-time communication session.
37. the one or more programs while displaying, within the first user interface, the view of the content of the shared content session overlaid on the background user interface and the first representation of the participants of the real-time communication session at the first individual location relative to the view of the content of the shared content session; receiving an indication of a change in an activity level of a third participant in the real-time communication session; 27. The non-transitory computer-readable storage medium of claim 24 or 26, further comprising instructions for, in response to receiving the indication of a change in an activity level of the third participant in the real-time communication session, displaying a representation of the third participant in the real-time communication session at the first discrete location relative to the view of the content of the shared content session overlaid on the background user interface.
38. the one or more programs receiving, while displaying, in the first user interface, the view of the content of the shared content session overlaid on the background user interface and the first representation of the participants of the real-time communication session at the first individual location relative to the view of the content of the shared content session, a first indication that a participant of the real-time communication session is not providing video to the real-time communication session; 27. The non-transitory computer-readable storage medium of claim 24 or 26, further comprising instructions for ceasing display of the first representation of a participant in the real-time communication session in response to receiving the first indication that the participant in the real-time communication session is not providing video to the real-time communication session.
39. the one or more programs receiving, in the first user interface, an indication that the content has been removed from the shared content session while displaying the view of the content of the shared content session overlaid on the background user interface; in response to receiving the indication that the content has been removed from the shared content session, ceasing to display the view of the content; 27. The non-transitory computer-readable storage medium of claim 24 or 26, further comprising instructions for displaying, in the first user interface, a fourth representation of the participants in the real-time communication session overlaid on the background user interface.
40. the one or more programs receiving a request to move the fourth representation of the participant of the real-time communication session in the first user interface; 40. The non-transitory computer-readable storage medium of claim 39, further comprising instructions for, in response to receiving the request to move the fourth representation of the participant of the real-time communication session, moving the fourth representation of the participant of the real-time communication session in accordance with the request to move the fourth representation of the participant of the real-time communication session.
41. the one or more programs receiving a second indication that a participant in the real-time communication session is not providing video to the real-time communication session while displaying the fourth representation of the participant in the real-time communication session in the first user interface; 40. The non-transitory computer-readable storage medium of claim 39, further comprising instructions for ceasing display of the fourth representation of the participant in the real-time communication session in response to receiving the second indication that the participant in the real-time communication session is not providing video to the real-time communication session.
42. the one or more programs after ceasing to display the fourth representation of the participant of the real-time communication session; receiving an indication that a participant in the real-time communication session is providing video to the real-time communication session; 42. The non-transitory computer-readable storage medium of claim 41, further comprising instructions for, in response to receiving the indication that a participant in the real-time communication session is providing video to the real-time communication session, displaying a fifth representation of a participant in the real-time communication session.
43. 43. The non-transitory computer-readable storage medium of claim 42, wherein the fifth representation of a participant in the real-time communication session includes a representation of a participant who has caused the indication to be displayed that the participant in the real-time communication session is providing video to the real-time communication session.
44. the one or more programs detecting an input via the one or more input devices corresponding to a selection of the first representation of the participant of the real-time communication session; 27. The non-transitory computer-readable storage medium of claim 24 or 26, further comprising instructions for displaying a second user interface of a video communication application for the real-time communication session in response to detecting the input corresponding to a selection of the first representation of the participant of the real-time communication session.
45. the one or more programs detecting an input via the one or more input devices while displaying, in the first user interface, the view of the content of the shared content session overlaid on the background user interface and the first representation of the participants of the real-time communication session at the first individual location relative to the view of the content of the shared content session; In response to detecting the input, pursuant to a determination that the input is directed to the view of the content, performing an action associated with the view of the content; 27. The non-transitory computer-readable storage medium of claim 24 or 26, further comprising instructions for displaying a third user interface of a video communication application for the real-time communication session in accordance with a determination that the input is directed to the first representation of the participant.
46. the one or more programs receiving, while displaying the first user interface, a first request to resize the view of the content within the first user interface; In response to receiving the first request to change the size of the view of the content, resizing the view of the content in accordance with the request to resize the view of the content; 27. The non-transitory computer-readable storage medium of claim 24 or 26, further comprising instructions for resizing the first representation of the participant.
47. the one or more programs receiving, while displaying the first user interface, a second request to resize the view of the content within the first user interface; 27. The non-transitory computer-readable storage medium of claim 24 or 26, further comprising instructions, in response to receiving the second request to resize the view of the content, to resize the view of the content in accordance with the request to resize the view of the content without resizing the first representation of the participant.
48. and in response to detecting the request to cease displaying the view of the content of the shared content session on the background user interface, displaying, via the one or more output generation components, a second representation of the participants at a second individual location and / or a first size relative to the view of the content of the shared content session; the second individual location for the view of the content of the shared content session is different from the first individual location for the view of the content of the shared content session; 26. The method of claim 25, wherein the first size is different from a size of the first representation of the participant displayed at the first individual location relative to the view of the content of the shared content session.
49. The method of claim 25 , wherein the background user interface is a system user interface.
50. The method of claim 25 , wherein the background user interface is an application user interface.
51. detecting, in the first user interface, a request to change the background user interface from a first background user interface to a second background user interface different from the first background user interface while simultaneously displaying the view of the content of the shared content session overlaid on the background user interface and the first representation of the participants at the first individual location relative to the view of the content of the shared content session; in response to detecting the request to change the background user interface from the first background user interface to the second background user interface; the view of the content of the shared content session overlaid on the second background user interface; 26. The method of claim 25, further comprising simultaneously displaying the first representation of the participant, the first representation of the participant being displayed at the first separate location relative to the view of the content of the shared content session.
52. detecting a request to perform an action in the background user interface while displaying the view of the content of the shared content session overlaying the background user interface; 26. The method of claim 25, further comprising: in response to detecting the request to perform an action in the background user interface, performing the action in the background user interface while maintaining display of the view of the content of the shared content session overlaying the background user interface.
53. 26. The method of claim 25, wherein the request to cease displaying the view of the content of the shared content session on the background user interface comprises a request to display a first user interface of a video communications application.
54. 54. The method of claim 53, further comprising displaying, while displaying the first user interface of the video communication application, a plurality of representations of participants in the real-time communication session within the first user interface of the video communication application.
55. 26. The method of claim 25, wherein the request to cease displaying the view of the content of the shared content session via the background user interface comprises a request to display the content in an enhanced display mode.
56. In response to detecting the request to display the content in an enhanced display mode, Displaying the content in a second user interface in an extended display mode; 56. The method of claim 55, further comprising: displaying a third representation of the participants in the real-time communication session overlaid on the second user interface simultaneously with the content in the second user interface in the expanded display mode.
57. receiving a request to move the third representation of the participant of the real-time communication session while displaying the third representation of the participant at a first location on the second user interface; 57. The method of claim 56, further comprising: in response to receiving the request to move the third representation of the participant, displaying the third representation of the participant of the real-time communication session at a second location on the second user interface, the second location being different from the first location.
58. receiving an indication of a change in an activity level of a second participant in the real-time communication session while displaying the third representation of the participant in the real-time communication session on the second user interface; 57. The method of claim 56, further comprising: in response to receiving the indication of a change in an activity level of a second participant in the real-time communication session, displaying a representation of the second participant in the real-time communication session.
59. while displaying, within the first user interface, the view of the content of the shared content session overlaid on the background user interface and the first representation of the participants of the real-time communication session at the first individual location relative to the view of the content of the shared content session; receiving an indication of a change in an activity level of a third participant in the real-time communication session; 26. The method of claim 25, further comprising: in response to receiving the indication of a change in an activity level of the third participant in the real-time communication session, displaying a representation of the third participant in the real-time communication session at the first discrete location relative to the view of the content of the shared content session overlaid on the background user interface.
60. receiving, while displaying, in the first user interface, the view of the content of the shared content session overlaid on the background user interface and the first representation of the participants of the real-time communication session at the first individual location relative to the view of the content of the shared content session, a first indication that a participant of the real-time communication session is not providing video to the real-time communication session; 26. The method of claim 25, further comprising: ceasing to display the first representation of the participant of the real-time communication session in response to receiving the first indication that the participant of the real-time communication session is not providing video to the real-time communication session.
61. receiving, in the first user interface, an indication that the content has been removed from the shared content session while displaying the view of the content of the shared content session overlaid on the background user interface; in response to receiving the indication that the content has been removed from the shared content session, ceasing to display the view of the content; and 26. The method of claim 25, further comprising: displaying, in the first user interface, a fourth representation of the participants in the real-time communication session overlaid on the background user interface.
62. receiving a request to move the fourth representation of the participant of the real-time communication session in the first user interface; 62. The method of claim 61 , further comprising: in response to receiving the request to move the fourth representation of the participant of the real-time communication session, moving the fourth representation of the participant of the real-time communication session in accordance with the request to move the fourth representation of the participant of the real-time communication session.
63. receiving, while displaying within the first user interface the fourth representation of the participant in the real-time communication session, a second indication that a participant in the real-time communication session is not providing video to the real-time communication session; 62. The method of claim 61 , further comprising: ceasing to display the fourth representation of the participant in the real-time communication session in response to receiving the second indication that the participant in the real-time communication session is not providing video to the real-time communication session.
64. after ceasing to display the fourth representation of the participant of the real-time communication session; receiving an indication that a participant in the real-time communication session is providing video to the real-time communication session; 64. The method of claim 63, further comprising: in response to receiving the indication that a participant in the real-time communication session is providing video to the real-time communication session, displaying a fifth representation of a participant in the real-time communication session.
65. 65. The method of claim 64, wherein the fifth representation of a participant in the real-time communication session includes a representation of a participant who caused the indication to be displayed that the participant in the real-time communication session is providing video to the real-time communication session.
66. detecting an input via the one or more input devices corresponding to a selection of the first representation of the participant of the real-time communication session; 26. The method of claim 25, further comprising: in response to detecting the input corresponding to a selection of the first representation of the participant of the real-time communication session, displaying a second user interface of a video communication application for the real-time communication session.
67. detecting an input via the one or more input devices while displaying, in the first user interface, the view of the content of the shared content session overlaid on the background user interface and the first representation of the participants of the real-time communication session at the first individual location relative to the view of the content of the shared content session; In response to detecting the input, performing an action associated with the view of the content in accordance with a determination that the input is directed to the view of the content; 26. The method of claim 25, further comprising: displaying a third user interface of a video communication application for the real-time communication session in accordance with a determination that the input is directed to the first representation of the participant.
68. receiving a first request to resize the view of the content within the first user interface while displaying the first user interface; In response to receiving the first request to change the size of the view of the content, resizing the view of the content in accordance with the request to resize the view of the content; 26. The method of claim 25, further comprising: resizing the first representation of the participant.
69. receiving a second request to resize the view of the content within the first user interface while displaying the first user interface; 26. The method of claim 25, further comprising: in response to receiving the second request to resize the view of the content, resizing the view of the content in accordance with the request to resize the view of the content without resizing the first representation of the participant.
70. A computer program that causes a computer to execute any one of the methods of claims 25, 48 to 69.
71. A computer system comprising: A memory storing a computer program according to claim 70; one or more processors capable of executing the computer programs stored in the memory; wherein the computer system is configured to communicate with one or more output generation components and one or more input devices.
72. A computer system configured to communicate with one or more output generation components and one or more input devices, comprising: Means for carrying out the method of any one of claims 25, 48 to 69, Computer system.
Citation Information
Patent Citations
Computer system for supporting co-operation
JP1996279998A
Communication terminal, display control method, and display control program
JP2010206745A
Display device, television receiver, program, and recording medium
WO2017038261A1