The present disclosure relates generally to computer user interfaces, and more specifically to techniques for managing shared-content sessions.
Computer systems can include hardware and/or software for displaying interfaces for various types of communication and information sharing.
Some techniques for communication and information sharing using electronic devices, are generally cumbersome and inefficient. For example, some existing techniques use a complex and time-consuming user interface, which may include multiple key presses or keystrokes. Existing techniques require more time than necessary, wasting user time and device energy. This latter consideration is particularly important in battery-operated devices.
The present technique provides electronic devices with faster, 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 a user and produce a more efficient human-machine interface. For battery-operated computing devices, such methods and interfaces conserve power and increase the time between battery charges.
In accordance with some embodiments, a method is described. The method is performed at a computer system that is in communication with one or more output generation components and one or more input devices. The method comprises: 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 a request to output the content: in accordance with a determination that there is an active shared-content session between the computer system and an external computer system, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the external computer system: outputting, via an output generation component of the one or more output generation components, a first notification that includes 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 an output generation component of the one or more output generation components.
In accordance with 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 that is in communication with one or more output generation 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 a request to output the content: in accordance with a determination that there is an active shared-content session between the computer system and an external computer system, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the external computer system: outputting, via an output generation component of the one or more output generation components, a first notification that includes 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 an output generation component of the one or more output generation components.
In accordance with some embodiments, a transitory computer-readable storage medium is described. The transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation 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 a request to output the content: in accordance with a determination that there is an active shared-content session between the computer system and an external computer system, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the external computer system: outputting, via an output generation component of the one or more output generation components, a first notification that includes 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 an output generation component of the one or more output generation components.
In accordance with some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: detecting, via the one or more 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 a request to output the content: in accordance with a determination that there is an active shared-content session between the computer system and an external computer system, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the external computer system: outputting, via an output generation component of the one or more output generation components, a first notification that includes 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 an output generation component of the one or more output generation components.
In accordance with some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; 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 a request to output the content: in accordance with a determination that there is an active shared-content session between the computer system and an external computer system, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the external computer system: outputting, via an output generation component of the one or more output generation components, a first notification that includes 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 an output generation component of the one or more output generation components.
In accordance with some embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation 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 a request to output the content: in accordance with a determination that there is an active shared-content session between the computer system and an external computer system, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the external computer system: outputting, via an output generation component of the one or more output generation components, a first notification that includes 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 an output generation component of the one or more output generation components.
In accordance with some embodiments, a method performed at a computer system that is in communication with one or more output generation components and one or more input devices is described. The method comprises: while displaying, via an output generation component of the one or more output generation components, a first user interface while a shared-content session between the computer system and an external computer system is active: receiving an indication that first content has been selected for the shared-content session at the external computer system, wherein the first content is associated with a first application on the computer system; and in response to receiving the indication that the first content has been selected for the shared-content session, outputting, via an output generation component of the one or more output generation components, a first notification generated by a second application that is different from the first application that is associated with the first content; and after outputting the first notification and while the shared-content session between the computer system and the external computer system is active, outputting, via an output generation component of the one or more output generation components, the first content using the first application that is associated with the first content.
In accordance with 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 that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: while displaying, via an output generation component of the one or more output generation components, a first user interface while a shared-content session between the computer system and an external computer system is active: receiving an indication that first content has been selected for the shared-content session at the external computer system, wherein the first content is associated with a first application on the computer system; and in response to receiving the indication that the first content has been selected for the shared-content session, outputting, via an output generation component of the one or more output generation components, a first notification generated by a second application that is different from the first application that is associated with the first content; and after outputting the first notification and while the shared-content session between the computer system and the external computer system is active, outputting, via an output generation component of the one or more output generation components, the first content using the first application that is associated with the first content.
In accordance with some embodiments, a transitory computer-readable storage medium is described. The transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: while displaying, via an output generation component of the one or more output generation components, a first user interface while a shared-content session between the computer system and an external computer system is active: receiving an indication that first content has been selected for the shared-content session at the external computer system, wherein the first content is associated with a first application on the computer system; and in response to receiving the indication that the first content has been selected for the shared-content session, outputting, via an output generation component of the one or more output generation components, a first notification generated by a second application that is different from the first application that is associated with the first content; and after outputting the first notification and while the shared-content session between the computer system and the external computer system is active, outputting, via an output generation component of the one or more output generation components, the first content using the first application that is associated with the first content.
In accordance with some embodiments, a computer system that is in communication with one or more output generation components and one or more input devices is described. The computer system comprises: one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: while displaying, via an output generation component of the one or more output generation components, a first user interface while a shared-content session between the computer system and an external computer system is active: receiving an indication that first content has been selected for the shared-content session at the external computer system, wherein the first content is associated with a first application on the computer system; and in response to receiving the indication that the first content has been selected for the shared-content session, outputting, via an output generation component of the one or more output generation components, a first notification generated by a second application that is different from the first application that is associated with the first content; and after outputting the first notification and while the shared-content session between the computer system and the external computer system is active, outputting, via an output generation component of the one or more output generation components, the first content using the first application that is associated with the first content.
In accordance with some embodiments, a computer system that is in communication with one or more output generation components and one or more input devices is described. The computer system comprises: means for, while displaying, via an output generation component of the one or more output generation components, a first user interface while a shared-content session between the computer system and an external computer system is active: receiving an indication that first content has been selected for the shared-content session at the external computer system, wherein the first content is associated with a first application on the computer system; and in response to receiving the indication that the first content has been selected for the shared-content session, outputting, via an output generation component of the one or more output generation components, a first notification generated by a second application that is different from the first application that is associated with the first content; and means for, after outputting the first notification and while the shared-content session between the computer system and the external computer system is active, outputting, via an output generation component of the one or more output generation components, the first content using the first application that is associated with the first content.
In accordance with some embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: while displaying, via an output generation component of the one or more output generation components, a first user interface while a shared-content session between the computer system and an external computer system is active: receiving an indication that first content has been selected for the shared-content session at the external computer system, wherein the first content is associated with a first application on the computer system; and in response to receiving the indication that the first content has been selected for the shared-content session, outputting, via an output generation component of the one or more output generation components, a first notification generated by a second application that is different from the first application that is associated with the first content; and after outputting the first notification and while the shared-content session between the computer system and the external computer system is active, outputting, via an output generation component of the one or more output generation components, the first content using the first application that is associated with the first content.
In accordance with some embodiments, a method is described. The method is performed at a computer system that is in communication with one or more output generation components and one or more input devices. The method comprises: 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 content of a first type, and prior to adding the first content to the shared-content session, outputting an alert that the first content is going to be added to the shared-content session, wherein the alert includes 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 content of a second type that is different from the first type, adding the first content to the shared-content session without outputting the alert that the first content is going to be added to the shared-content session before the first content is added to the shared-content session.
In accordance with 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 that is 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 content of a first type, and prior to adding the first content to the shared-content session, outputting an alert that the first content is going to be added to the shared-content session, wherein the alert includes 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 content of a second type that is different from the first type, adding the first content to the shared-content session without outputting the alert that the first content is going to be added to the shared-content session before the first content is added to the shared-content session.
In accordance with some embodiments, a transitory computer-readable storage medium is described. The transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more 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 content of a first type, and prior to adding the first content to the shared-content session, outputting an alert that the first content is going to be added to the shared-content session, wherein the alert includes 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 content of a second type that is different from the first type, adding the first content to the shared-content session without outputting the alert that the first content is going to be added to the shared-content session before the first content is added to the shared-content session.
In accordance with some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: 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 content of a first type, and prior to adding the first content to the shared-content session, outputting an alert that the first content is going to be added to the shared-content session, wherein the alert includes 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 content of a second type that is different from the first type, adding the first content to the shared-content session without outputting the alert that the first content is going to be added to the shared-content session before the first content is added to the shared-content session.
In accordance with some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; 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: in accordance with a determination that the first content is content of a first type, and prior to adding the first content to the shared-content session, outputting an alert that the first content is going to be added to the shared-content session, wherein the alert includes 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 content of a second type that is different from the first type, adding the first content to the shared-content session without outputting the alert that the first content is going to be added to the shared-content session before the first content is added to the shared-content session.
In accordance with some embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more 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 content of a first type, and prior to adding the first content to the shared-content session, outputting an alert that the first content is going to be added to the shared-content session, wherein the alert includes 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 content of a second type that is different from the first type, adding the first content to the shared-content session without outputting the alert that the first content is going to be added to the shared-content session before the first content is added to the shared-content session.
In accordance with some embodiments, a method is described. The method is performed at a computer system that is in communication with one or more output generation components and one or more input devices. The method comprises: 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: in accordance with a determination that a first set of criteria is met, wherein the first set of criteria is met when a shared-content session between the computer system and an external computer system is active, and the first application is capable of playing content that can be added to the shared-content session, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the external computer system, outputting, via an output generation component of the one or more output generation 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 the indication that the first application is capable of playing content that can be added to the shared-content session.
In accordance with 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 that is 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: in accordance with a determination that a first set of criteria is met, wherein the first set of criteria is met when a shared-content session between the computer system and an external computer system is active, and the first application is capable of playing content that can be added to the shared-content session, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the external computer system, outputting, via an output generation component of the one or more output generation 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 the indication that the first application is capable of playing content that can be added to the shared-content session.
In accordance with some embodiments, a transitory computer-readable storage medium is described. The transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more 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: in accordance with a determination that a first set of criteria is met, wherein the first set of criteria is met when a shared-content session between the computer system and an external computer system is active, and the first application is capable of playing content that can be added to the shared-content session, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the external computer system, outputting, via an output generation component of the one or more output generation 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 the indication that the first application is capable of playing content that can be added to the shared-content session.
In accordance with some embodiments, a computer system is described. The computer system comprises: one or more output generation components and one or more input devices; one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: 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: in accordance with a determination that a first set of criteria is met, wherein the first set of criteria is met when a shared-content session between the computer system and an external computer system is active, and the first application is capable of playing content that can be added to the shared-content session, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the external computer system, outputting, via an output generation component of the one or more output generation 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 the indication that the first application is capable of playing content that can be added to the shared-content session.
In accordance with some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; 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: in accordance with a determination that a first set of criteria is met, wherein the first set of criteria is met when a shared-content session between the computer system and an external computer system is active, and the first application is capable of playing content that can be added to the shared-content session, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the external computer system, outputting, via an output generation component of the one or more output generation 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 the indication that the first application is capable of playing content that can be added to the shared-content session.
In accordance with some embodiments, a computer program product is described. The computer program product comprises one or more processors of a computer system that is 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: in accordance with a determination that a first set of criteria is met, wherein the first set of criteria is met when a shared-content session between the computer system and an external computer system is active, and the first application is capable of playing content that can be added to the shared-content session, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the external computer system, outputting, via an output generation component of the one or more output generation 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 the indication that the first application is capable of playing content that can be added to the shared-content session.
In accordance with some embodiments, a method is described. The method is performed at a computer system that is in communication with one or more output generation components and one or more input devices. The method comprises: 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 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 are met based on whether the content is available to be output by the computer system in a predetermined manner, outputting, via an output generation component of the one or more output generation components, the first content; and in accordance with a determination that the content output criteria are not met, outputting, via the 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 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 that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions 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 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 are met based on whether the content is available to be output by the computer system in a predetermined manner, outputting, via an output generation component of the one or more output generation components, the first content; and in accordance with a determination that the content output criteria are not met, outputting, via the 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 some embodiments, a transitory computer-readable storage medium is described. The transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions 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 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 are met based on whether the content is available to be output by the computer system in a predetermined manner, outputting, via an output generation component of the one or more output generation components, the first content; and in accordance with a determination that the content output criteria are not met, outputting, via the 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 some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: 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 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 are met based on whether the content is available to be output by the computer system in a predetermined manner, outputting, via an output generation component of the one or more output generation components, the first content; and in accordance with a determination that the content output criteria are not met, outputting, via the 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 some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; 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: 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, outputting, via an output generation component of the one or more output generation components, the first content; and in accordance with a determination that the content output criteria are not met, outputting, via the 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 some embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions 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 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 are met based on whether the content is available to be output by the computer system in a predetermined manner, outputting, via an output generation component of the one or more output generation components, the first content; and in accordance with a determination that the content output criteria are not met, outputting, via the 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 some embodiments, a method is described. The method is performed at a computer system that is in communication with one or more output generation components and one or more input devices. The method comprises: displaying, via an output generation component of the one or more output generation components, a messaging interface for a respective message conversation, including concurrently displaying: a message display region of the respective message conversation between two or more participants of the respective message conversation that includes 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 of the message conversation, wherein the graphical representation of the ongoing shared-content session includes first information about one or more parameters of the shared-content session, including content in the shared-content session and participant status in the shared-content session; 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 respective message conversation that includes the graphical representation of the shared-content session; and in response to receiving the request to display the portion of the respective message conversation that includes the graphical representation of the shared-content session, displaying 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, wherein the updated representation of the ongoing shared-content session includes second information about the one or more parameters of the shared-content session, that is different from the first information, including different content in the shared-content session and/or different participant status in the shared-content session.
In accordance with 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 that is 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 an output generation component of the one or more output generation components, a messaging interface for a respective message conversation, including concurrently displaying: a message display region of the respective message conversation between two or more participants of the respective message conversation that includes 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 of the message conversation, wherein the graphical representation of the ongoing shared-content session includes first information about one or more parameters of the shared-content session, including content in the shared-content session and participant status in the shared-content session; 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 respective message conversation that includes the graphical representation of the shared-content session; and in response to receiving the request to display the portion of the respective message conversation that includes the graphical representation of the shared-content session, displaying 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, wherein the updated representation of the ongoing shared-content session includes second information about the one or more parameters of the shared-content session, that is different from the first information, including different content in the shared-content session and/or different participant status in the shared-content session.
In accordance with some embodiments, a transitory computer-readable storage medium is described. The transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: displaying, via an output generation component of the one or more output generation components, a messaging interface for a respective message conversation, including concurrently displaying: a message display region of the respective message conversation between two or more participants of the respective message conversation that includes 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 of the message conversation, wherein the graphical representation of the ongoing shared-content session includes first information about one or more parameters of the shared-content session, including content in the shared-content session and participant status in the shared-content session; 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 respective message conversation that includes the graphical representation of the shared-content session; and in response to receiving the request to display the portion of the respective message conversation that includes the graphical representation of the shared-content session, displaying 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, wherein the updated representation of the ongoing shared-content session includes second information about the one or more parameters of the shared-content session, that is different from the first information, including different content in the shared-content session and/or different participant status in the shared-content session.
In accordance with some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: displaying, via an output generation component of the one or more output generation components, a messaging interface for a respective message conversation, including concurrently displaying: a message display region of the respective message conversation between two or more participants of the respective message conversation that includes 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 of the message conversation, wherein the graphical representation of the ongoing shared-content session includes first information about one or more parameters of the shared-content session, including content in the shared-content session and participant status in the shared-content session; 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 respective message conversation that includes the graphical representation of the shared-content session; and in response to receiving the request to display the portion of the respective message conversation that includes the graphical representation of the shared-content session, displaying 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, wherein the updated representation of the ongoing shared-content session includes second information about the one or more parameters of the shared-content session, that is different from the first information, including different content in the shared-content session and/or different participant status in the shared-content session.
In accordance with some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; means for displaying, via an output generation component of the one or more output generation components, a messaging interface for a respective message conversation, including concurrently displaying: a message display region of the respective message conversation between two or more participants of the respective message conversation that includes 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 of the message conversation, wherein the graphical representation of the ongoing shared-content session includes first information about 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, 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 respective message conversation that includes the graphical representation of the shared-content session; and means for, in response to receiving the request to display the portion of the respective message conversation that includes the graphical representation of the shared-content session, displaying 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, wherein the updated representation of the ongoing shared-content session includes second information about the one or more parameters of the shared-content session, that is different from the first information, including different content in the shared-content session and/or different participant status in the shared-content session.
In accordance with some embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: displaying, via an output generation component of the one or more output generation components, a messaging interface for a respective message conversation, including concurrently displaying: a message display region of the respective message conversation between two or more participants of the respective message conversation that includes 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 of the message conversation, wherein the graphical representation of the ongoing shared-content session includes first information about one or more parameters of the shared-content session, including content in the shared-content session and participant status in the shared-content session; 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 respective message conversation that includes the graphical representation of the shared-content session; and in response to receiving the request to display the portion of the respective message conversation that includes the graphical representation of the shared-content session, displaying 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, wherein the updated representation of the ongoing shared-content session includes second information about the one or more parameters of the shared-content session, that is different from the first information, including different content in the shared-content session and/or different participant status in the shared-content session.
In accordance with some embodiments, a method is described. The method is performed at a computer system that is in communication with one or more output generation components and one or more input devices. The method comprises: 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; and in response to receiving the request to display information associated with the shared-content session: displaying, via an output generation component of the one or more output generation 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, displaying, via the output generation component of the one or more output generation 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 generation component of the one or more output generation components, a representation of the second content that is different from the representation of the first content.
In accordance with 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 that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: 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; and in response to receiving the request to display information associated with the shared-content session: displaying, via an output generation component of the one or more output generation 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, displaying, via the output generation component of the one or more output generation 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 generation component of the one or more output generation components, a representation of the second content that is different from the representation of the first content.
In accordance with some embodiments, a transitory computer-readable storage medium is described. The transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: 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; and in response to receiving the request to display information associated with the shared-content session: displaying, via an output generation component of the one or more output generation 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, displaying, via the output generation component of the one or more output generation 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 generation component of the one or more output generation components, a representation of the second content that is different from the representation of the first content.
In accordance with some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: while 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; and in response to receiving the request to display information associated with the shared-content session: displaying, via an output generation component of the one or more output generation 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, displaying, via the output generation component of the one or more output generation 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 generation component of the one or more output generation components, a representation of the second content that is different from the representation of the first content.
In accordance with some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; means for, 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; and in response to receiving the request to display information associated with the shared-content session: displaying, via an output generation component of the one or more output generation 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, displaying, via the output generation component of the one or more output generation 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 generation component of the one or more output generation components, a representation of the second content that is different from the representation of the first content.
In accordance with some embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: 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; and in response to receiving the request to display information associated with the shared-content session: displaying, via an output generation component of the one or more output generation 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, displaying, via the output generation component of the one or more output generation 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 generation component of the one or more output generation components, a representation of the second content that is different from the representation of the first content.
In accordance with some embodiments, a method performed at a computer system that is in communication with one or more output generation components and one or more input devices is described. The method comprises: while a shared-content session between the computer system and one or more external computer systems is active and while a plurality of application interface regions are concurrently displayed in a user interface, including at least a portion of a first application interface region and at least a portion of a second application interface region, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the one or more external computer systems: 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, at a location in the user interface that is visually associated with the first application interface region, a first graphical interface object that is selectable to add the first application interface region to the shared-content session without adding the second application interface region to the shared-content session, wherein the first graphical interface object is not visually associated with the second application interface region.
In accordance with 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 that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: while a shared-content session between the computer system and one or more external computer systems is active and while a plurality of application interface regions are concurrently displayed in a user interface, including at least a portion of a first application interface region and at least a portion of a second application interface region, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the one or more external computer systems: 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, at a location in the user interface that is visually associated with the first application interface region, a first graphical interface object that is selectable to add the first application interface region to the shared-content session without adding the second application interface region to the shared-content session, wherein the first graphical interface object is not visually associated with the second application interface region.
In accordance with some embodiments, a transitory computer-readable storage medium is described. The transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: while a shared-content session between the computer system and one or more external computer systems is active and while a plurality of application interface regions are concurrently displayed in a user interface, including at least a portion of a first application interface region and at least a portion of a second application interface region, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the one or more external computer systems: 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, at a location in the user interface that is visually associated with the first application interface region, a first graphical interface object that is selectable to add the first application interface region to the shared-content session without adding the second application interface region to the shared-content session, wherein the first graphical interface object is not visually associated with the second application interface region.
In accordance with some embodiments, a computer system that is in communication with one or more output generation components and one or more input devices is described. The computer system comprises: one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: while a shared-content session between the computer system and one or more external computer systems is active and while a plurality of application interface regions are concurrently displayed in a user interface, including at least a portion of a first application interface region and at least a portion of a second application interface region, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the one or more external computer systems: 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, at a location in the user interface that is visually associated with the first application interface region, a first graphical interface object that is selectable to add the first application interface region to the shared-content session without adding the second application interface region to the shared-content session, wherein the first graphical interface object is not visually associated with the second application interface region.
In accordance with some embodiments, a computer system that is in communication with one or more output generation components and one or more input devices is described. The computer system comprises: means for, while a shared-content session between the computer system and one or more external computer systems is active and while a plurality of application interface regions are concurrently displayed in a user interface, including at least a portion of a first application interface region and at least a portion of a second application interface region, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the one or more external computer systems: 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, at a location in the user interface that is visually associated with the first application interface region, a first graphical interface object that is selectable to add the first application interface region to the shared-content session without adding the second application interface region to the shared-content session, wherein the first graphical interface object is not visually associated with the second application interface region.
In accordance with some embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: while a shared-content session between the computer system and one or more external computer systems is active and while a plurality of application interface regions are concurrently displayed in a user interface, including at least a portion of a first application interface region and at least a portion of a second application interface region, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the one or more external computer systems: 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, at a location in the user interface that is visually associated with the first application interface region, a first graphical interface object that is selectable to add the first application interface region to the shared-content session without adding the second application interface region to the shared-content session, wherein the first graphical interface object is not visually associated with the second application interface region.
In accordance with some embodiments, a method performed at a computer system that is in communication with one or more output generation components and one or more input devices is described. The method comprises: while a shared-content session between the computer system and one or more external computer systems is active, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the one or more external computer systems: receiving data representing first content that has been selected for the shared-content session at the external computer system; and in response to receiving the data representing the first content that has been selected for the shared-content session, displaying, via an output generation component of the one or more output generation components, a display region that includes a representation of the first content, 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 for controlling a visual appearance of the display region, wherein the first set of one or more controls is visually associated with the representation of the first content; 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 region.
In accordance with 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 that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: while a shared-content session between the computer system and one or more external computer systems is active, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the one or more external computer systems: receiving data representing first content that has been selected for the shared-content session at the external computer system; and in response to receiving the data representing the first content that has been selected for the shared-content session, displaying, via an output generation component of the one or more output generation components, a display region that includes a representation of the first content, 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 for controlling a visual appearance of the display region, wherein the first set of one or more controls is visually associated with the representation of the first content; 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 region.
In accordance with some embodiments, a transitory computer-readable storage medium is described. The transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: while a shared-content session between the computer system and one or more external computer systems is active, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the one or more external computer systems: receiving data representing first content that has been selected for the shared-content session at the external computer system; and in response to receiving the data representing the first content that has been selected for the shared-content session, displaying, via an output generation component of the one or more output generation components, a display region that includes a representation of the first content, 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 for controlling a visual appearance of the display region, wherein the first set of one or more controls is visually associated with the representation of the first content; 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 region.
In accordance with some embodiments, a computer system that is in communication with one or more output generation components and one or more input devices is described. The computer system comprises: one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: while a shared-content session between the computer system and one or more external computer systems is active, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the one or more external computer systems: receiving data representing first content that has been selected for the shared-content session at the external computer system; and in response to receiving the data representing the first content that has been selected for the shared-content session, displaying, via an output generation component of the one or more output generation components, a display region that includes a representation of the first content, 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 for controlling a visual appearance of the display region, wherein the first set of one or more controls is visually associated with the representation of the first content; 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 region.
In accordance with some embodiments, a computer system that is in communication with one or more output generation components and one or more input devices is described. The computer system comprises: means for, while a shared-content session between the computer system and one or more external computer systems is active, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the one or more external computer systems: receiving data representing first content that has been selected for the shared-content session at the external computer system; and in response to receiving the data representing the first content that has been selected for the shared-content session, displaying, via an output generation component of the one or more output generation components, a display region that includes a representation of the first content, 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 for controlling a visual appearance of the display region, wherein the first set of one or more controls is visually associated with the representation of the first content; 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 region.
In accordance with some embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more output generation components and one or more input devices, the one or more programs including instructions for: while a shared-content session between the computer system and one or more external computer systems is active, wherein the shared-content session, when active, enables the computer system to output respective content while the respective content is being output by the one or more external computer systems: receiving data representing first content that has been selected for the shared-content session at the external computer system; and in response to receiving the data representing the first content that has been selected for the shared-content session, displaying, via an output generation component of the one or more output generation components, a display region that includes a representation of the first content, 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 for controlling a visual appearance of the display region, wherein the first set of one or more controls is visually associated with the representation of the first content; 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 region.
In accordance with some embodiments, a method is described. The method is performed at a computer system that is in communication with one or more output generation components and one or more input devices. The method comprises: displaying, via the one or more output generation components, a first user interface, including concurrently displaying, in the first user interface: a view of content of a shared-content session that is displayed overlaying a background user interface; and a first representation of a participant of a real-time communication session, wherein the first representation of the participant of the real-time communication session is displayed at a first respective location relative to the view of the content of the shared-content session; while displaying the first user interface, receiving a request to move the view of the content in 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 and moving the first representation of the participant so that the first representation of the participant is displayed at the first respective 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, detecting a request to cease to display the view of the content of the shared-content session over the background user interface; and in response to detecting the request to cease to display the view of the content of the shared-content session over the background user interface, displaying, via the one or more output generation components, a view of the content that is not displayed over the background user interface without displaying a representation of the participant at the first respective location relative to the view of the content of the shared-content session.
In accordance with 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 that is 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 first user interface, including concurrently displaying, in the first user interface: a view of content of a shared-content session that is displayed overlaying a background user interface; and a first representation of a participant of a real-time communication session, wherein the first representation of the participant of the real-time communication session is displayed at a first respective location relative to the view of the content of the shared-content session; while displaying the first user interface, receiving a request to move the view of the content in 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 and moving the first representation of the participant so that the first representation of the participant is displayed at the first respective 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, detecting a request to cease to display the view of the content of the shared-content session over the background user interface; and in response to detecting the request to cease to display the view of the content of the shared-content session over the background user interface, displaying, via the one or more output generation components, a view of the content that is not displayed over the background user interface without displaying a representation of the participant at the first respective location relative to the view of the content of the shared-content session.
In accordance with some embodiments, a transitory computer-readable storage medium is described. The transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more 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 first user interface, including concurrently displaying, in the first user interface: a view of content of a shared-content session that is displayed overlaying a background user interface; and a first representation of a participant of a real-time communication session, wherein the first representation of the participant of the real-time communication session is displayed at a first respective location relative to the view of the content of the shared-content session; while displaying the first user interface, receiving a request to move the view of the content in 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 and moving the first representation of the participant so that the first representation of the participant is displayed at the first respective 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, detecting a request to cease to display the view of the content of the shared-content session over the background user interface; and in response to detecting the request to cease to display the view of the content of the shared-content session over the background user interface, displaying, via the one or more output generation components, a view of the content that is not displayed over the background user interface without displaying a representation of the participant at the first respective location relative to the view of the content of the shared-content session.
In accordance with some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; one or more processors; an memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: displaying, via the one or more output generation components, a first user interface, including concurrently displaying, in the first user interface: a view of content of a shared-content session that is displayed overlaying a background user interface; and a first representation of a participant of a real-time communication session, wherein the first representation of the participant of the real-time communication session is displayed at a first respective location relative to the view of the content of the shared-content session; while displaying the first user interface, receiving a request to move the view of the content in 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 and moving the first representation of the participant so that the first representation of the participant is displayed at the first respective 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, detecting a request to cease to display the view of the content of the shared-content session over the background user interface; and in response to detecting the request to cease to display the view of the content of the shared-content session over the background user interface, displaying, via the one or more output generation components, a view of the content that is not displayed over the background user interface without displaying a representation of the participant at the first respective location relative to the view of the content of the shared-content session.
In accordance with some embodiments, a computer system is described. The computer system comprises: one or more output generation components; one or more input devices; means for displaying, via the one or more output generation components, a first user interface, including concurrently displaying, in the first user interface: a view of content of a shared-content session that is displayed overlaying a background user interface; and a first representation of a participant of a real-time communication session, wherein the first representation of the participant of the real-time communication session is displayed at a first respective location relative to the view of the content of the shared-content session; means for, while displaying the first user interface, receiving a request to move the view of the content in the first user interface; 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 and moving the first representation of the participant so that the first representation of the participant is displayed at the first respective location relative to the view of the content of the shared-content session; means for, after moving the view of the content and the first representation of the participant, detecting a request to cease to display the view of the content of the shared-content session over the background user interface; and means for, in response to detecting the request to cease to display the view of the content of the shared-content session over the background user interface, displaying, via the one or more output generation components, a view of the content that is not displayed over the background user interface without displaying a representation of the participant at the first respective location relative to the view of the content of the shared-content session.
In accordance with some embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more 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 first user interface, including concurrently displaying, in the first user interface: a view of content of a shared-content session that is displayed overlaying a background user interface; and a first representation of a participant of a real-time communication session, wherein the first representation of the participant of the real-time communication session is displayed at a first respective location relative to the view of the content of the shared-content session; while displaying the first user interface, receiving a request to move the view of the content in 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 and moving the first representation of the participant so that the first representation of the participant is displayed at the first respective 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, detecting a request to cease to display the view of the content of the shared-content session over the background user interface; and in response to detecting the request to cease to display the view of the content of the shared-content session over the background user interface, displaying, via the one or more output generation components, a view of the content that is not displayed over the background user interface without displaying a representation of the participant at the first respective location relative to the view of the content of the shared-content session.
In accordance with some embodiments, a method performed at a computer system that is in communication with one or more output generation components and one or more input devices is described. The method comprises: displaying, via the one or more output generation components, a user interface of a video communication application, including displaying, concurrently in the user interface of the video communication application: dynamic visual content; and one or more representations of participants of a video communication session, wherein the one or more representations of participants of 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 video 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 participants of the video communication session in a second arrangement in the user interface of the video communication application, wherein the second arrangement is different from the first arrangement and is based on the change in size and/or position of the dynamic visual content.
In accordance with 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 that is 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 a video communication application, including displaying, concurrently in the user interface of the video communication application: dynamic visual content; and one or more representations of participants of a video communication session, wherein the one or more representations of participants of 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 video 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 participants of the video communication session in a second arrangement in the user interface of the video communication application, wherein the second arrangement is different from the first arrangement and is based on the change in size and/or position of the dynamic visual content.
In accordance with some embodiments, a transitory computer-readable storage medium is described. The transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more 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 a video communication application, including displaying, concurrently in the user interface of the video communication application: dynamic visual content; and one or more representations of participants of a video communication session, wherein the one or more representations of participants of 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 video 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 participants of the video communication session in a second arrangement in the user interface of the video communication application, wherein the second arrangement is different from the first arrangement and is based on the change in size and/or position of the dynamic visual content.
In accordance with some embodiments, a computer system that is in communication with one or more output generation components and one or more input devices is described. The computer system comprises: one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: displaying, via the one or more output generation components, a user interface of a video communication application, including displaying, concurrently in the user interface of the video communication application: dynamic visual content; and one or more representations of participants of a video communication session, wherein the one or more representations of participants of 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 video 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 participants of the video communication session in a second arrangement in the user interface of the video communication application, wherein the second arrangement is different from the first arrangement and is based on the change in size and/or position of the dynamic visual content.
In accordance with some embodiments, a computer system that is in communication with one or more output generation components and one or more input devices is described. The computer system comprises: means for displaying, via the one or more output generation components, a user interface of a video communication application, including displaying, concurrently in the user interface of the video communication application: dynamic visual content; and one or more representations of participants of a video communication session, wherein the one or more representations of participants of 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 that changes an amount of the user interface of the video communication application that is covered by the dynamic video content; and means for, 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 participants of the video communication session in a second arrangement in the user interface of the video communication application, wherein the second arrangement is different from the first arrangement and is based on the change in size and/or position of the dynamic visual content.
In accordance with some embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system that is in communication with one or more 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 a video communication application, including displaying, concurrently in the user interface of the video communication application: dynamic visual content; and one or more representations of participants of a video communication session, wherein the one or more representations of participants of 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 video 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 participants of the video communication session in a second arrangement in the user interface of the video communication application, wherein the second arrangement is different from the first arrangement and is based on the change in size and/or position of the dynamic visual content.
Executable instructions for performing these functions are, optionally, included in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more processors. Executable instructions for performing these functions are, optionally, included in a transitory computer-readable storage medium or other computer program product configured for execution by one or more processors.
Thus, devices are provided with faster, more efficient methods and interfaces for managing shared-content sessions, thereby increasing the effectiveness, efficiency, and user satisfaction with such devices. Such methods and interfaces may complement or replace other methods for managing shared-content sessions.
For a better understanding of the various described embodiments, reference should be made to the Description of Embodiments below, in conjunction with the following drawings in which like reference numerals refer to corresponding parts throughout the figures.
The following description sets forth exemplary methods, parameters, and the like. It should be recognized, however, that such description is not intended as a limitation on the scope of the present disclosure but is instead provided as a description of exemplary embodiments.
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 a user who accesses content in a shared-content session, thereby enhancing productivity. Further, such techniques can reduce processor and battery power otherwise wasted on redundant user inputs.
Below,
The processes described below enhance the operability of the devices and make the user-device interfaces more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the device) through various techniques, including by providing improved visual feedback to the user, reducing the number of inputs needed to perform an operation, providing additional control options without cluttering the user interface with additional displayed controls, performing an operation when a set of conditions has been met without requiring further user input, and/or additional techniques. These techniques also reduce power usage and improve battery life of the device by enabling the user to use the device more quickly and efficiently.
In addition, in methods described herein where one or more steps are contingent upon one or more conditions having been met, it should be understood that the described method can be repeated in multiple repetitions so that over the course of the repetitions all of the conditions upon which steps in the method are contingent have been met in different repetitions of the method. For example, if a method requires performing a first step if a condition is satisfied, and a second step if the condition is not satisfied, then a person of ordinary skill would appreciate that the claimed steps are repeated until the condition has been both satisfied and not satisfied, in no particular order. Thus, a method described with one or more steps that are contingent upon one or more conditions having been met could be rewritten as a method that is repeated until each of the conditions described in the method has been met. This, however, is not required of system or computer readable medium claims where the system or computer readable medium contains instructions for performing the contingent operations based on the satisfaction of the corresponding one or more conditions and thus is capable of determining whether the contingency has or has not been satisfied without explicitly repeating steps of a method until all of the conditions upon which steps in the method are contingent have been met. A person having ordinary skill in the art would also understand that, similar to a method with contingent steps, a system or computer readable storage medium can repeat the steps of a method as many times as are needed to ensure that all of the contingent steps have been performed.
Although the following description uses terms “first,” “second,” etc. to describe various elements, these elements should not be limited by the terms. These terms are only used to distinguish one element from another. For example, a first touch could be termed a second touch, and, similarly, a second touch could be termed a first touch, without departing from the scope of the various described embodiments. The first touch and the second touch are both touches, but they are not the same touch.
The terminology used in the description of the various described embodiments herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used in the description of the various described embodiments and the appended claims, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term “and/or” as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms “includes,” “including,” “comprises,” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
The term “if” is, optionally, construed to mean “when” or “upon” or “in response to determining” or “in response to detecting,” depending on the context. Similarly, the phrase “if it is determined” or “if [a stated condition or event] is detected” is, optionally, construed to mean “upon determining” or “in response to determining” or “upon detecting [the stated condition or event]” or “in response to detecting [the stated condition or event],” depending on the context.
Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communications device, such as a mobile telephone, that also contains other functions, such as PDA and/or music player functions. Exemplary embodiments of portable multifunction devices include, without limitation, the iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, Calif. Other portable electronic devices, such as laptops or tablet computers with touch-sensitive surfaces (e.g., touch screen displays and/or touchpads), are, optionally, used. It should also be understood that, in some embodiments, the device is not a portable communications device, but is a desktop computer with a touch-sensitive surface (e.g., a touch screen display and/or a touchpad). In some embodiments, the electronic device is a computer system that is in communication (e.g., via wireless communication, via wired communication) with a display generation component. The display generation component is configured to provide visual output, such as display via a CRT display, display via an LED display, or display via image projection. In some embodiments, the display generation component is integrated with the computer system. In some embodiments, the display generation component is separate from the computer system. As used herein, “displaying” content includes causing to display the content (e.g., video data rendered or decoded by display controller 156) by transmitting, via a wired or wireless connection, data (e.g., image data or video data) to an integrated or external display generation component to visually produce the content.
In the discussion that follows, an electronic device that includes a display and a touch-sensitive surface is described. It should be understood, however, that the electronic device optionally includes one or more other physical user-interface devices, such as a physical keyboard, a mouse, and/or a joystick.
The device typically supports a variety of applications, such as one or more of the following: a drawing application, a presentation application, a word processing application, a website creation application, a disk authoring application, a spreadsheet application, a gaming application, a telephone application, a video conferencing application, an e-mail application, an instant messaging application, a workout support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and/or a digital video player application.
The various applications that are executed on the device optionally use at least one common physical user-interface device, such as the touch-sensitive surface. One or more functions of the touch-sensitive surface as well as corresponding information displayed on the device are, optionally, adjusted and/or varied from one application to the next and/or within a respective application. In this way, a common physical architecture (such as the touch-sensitive surface) of the device optionally supports the variety of applications with user interfaces that are intuitive and transparent to the user.
Attention is now directed toward embodiments of portable devices with touch-sensitive displays.
As used in the specification and claims, the term “intensity” of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch-sensitive surface, or to a substitute (proxy) for the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values that includes at least four distinct values and more typically includes hundreds of distinct values (e.g., at least 256). Intensity of a contact is, optionally, determined (or measured) using various approaches and various sensors or combinations of sensors. For example, one or more force sensors underneath or adjacent to the touch-sensitive surface are, optionally, used to measure force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., a weighted average) to determine an estimated force of a contact. Similarly, a pressure-sensitive tip of a stylus is, optionally, used to determine a pressure of the stylus on the touch-sensitive surface. Alternatively, the size of the contact area detected on the touch-sensitive surface and/or changes thereto, the capacitance of the touch-sensitive surface proximate to the contact and/or changes thereto, and/or the resistance of the touch-sensitive surface proximate to the contact and/or changes thereto are, optionally, used as a substitute for the force or pressure of the contact on the touch-sensitive surface. In some implementations, the substitute measurements for contact force or pressure are used directly to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is described in units corresponding to the substitute measurements). In some implementations, the substitute measurements for contact force or pressure are converted to an estimated force or pressure, and the estimated force or pressure is used to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). Using the intensity of a contact as an attribute of a user input allows for user access to additional device functionality that may otherwise not be accessible by the user on a reduced-size device with limited real estate for displaying affordances (e.g., on a touch-sensitive display) and/or receiving user input (e.g., via a touch-sensitive display, a touch-sensitive surface, or a physical/mechanical control such as a knob or a button).
As used in the specification and claims, the term “tactile output” refers to physical displacement of a device relative to a previous position of the device, physical displacement of a component (e.g., a touch-sensitive surface) of a device relative to another component (e.g., housing) of the device, or displacement of the component relative to a center of mass of the device that will be detected by a user with the user's sense of touch. For example, in situations where the device or the component of the device is in contact with a surface of a user that is sensitive to touch (e.g., a finger, palm, or other part of a user's hand), the tactile output generated by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in physical characteristics of the device or the component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is, optionally, interpreted by the user as a “down click” or “up click” of a physical actuator button. In some cases, a user will feel a tactile sensation such as an “down click” or “up click” even when there is no movement of a physical actuator button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user's movements. As another example, movement of the touch-sensitive surface is, optionally, interpreted or sensed by the user as “roughness” of the touch-sensitive surface, even when there is no change in smoothness of the touch-sensitive surface. While such interpretations of touch by a user will be subject to the individualized sensory perceptions of the user, there are many sensory perceptions of touch that are common to a large majority of users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., an “up click,” a “down click,” “roughness”), unless otherwise stated, the generated tactile output corresponds to physical displacement of the device or a component thereof that will generate the described sensory perception for a typical (or average) user.
It should be appreciated that device 100 is only one example of a portable multifunction device, and that device 100 optionally has more or fewer components than shown, optionally combines two or more components, or optionally has a different configuration or arrangement of the components. The various components shown in
Memory 102 optionally includes high-speed random access memory and optionally also includes non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Memory controller 122 optionally controls access to memory 102 by other components of device 100.
Peripherals interface 118 can be used to couple input and output peripherals of the device to CPU 120 and memory 102. The one or more processors 120 run or execute various software programs (such as computer programs (e.g., including instructions)) and/or sets of instructions stored in memory 102 to perform various functions for device 100 and to process data. In some embodiments, peripherals interface 118, CPU 120, and memory controller 122 are, optionally, implemented on a single chip, such as chip 104. In some other embodiments, they are, optionally, implemented on separate chips.
RF (radio frequency) circuitry 108 receives and sends RF signals, also called electromagnetic signals. RF circuitry 108 converts electrical signals to/from electromagnetic signals and communicates with communications networks and other communications devices via the electromagnetic signals. RF circuitry 108 optionally includes well-known circuitry for performing these functions, including but not limited to an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, and so forth. RF circuitry 108 optionally communicates with networks, such as the Internet, also referred to as the World Wide Web (WWW), an intranet and/or a wireless network, such as a cellular telephone network, a wireless local area network (LAN) and/or a metropolitan area network (MAN), and other devices by wireless communication. The RF circuitry 108 optionally includes well-known circuitry for detecting near field communication (NFC) fields, such as by a short-range communication radio. The wireless communication optionally uses any of a plurality of communications standards, protocols, and technologies, including but not limited to Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPDA), long term evolution (LTE), near field communication (NFC), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Bluetooth Low Energy (BTLE), Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, and/or IEEE 802.11ac), voice over Internet Protocol (VoIP), Wi-MAX, a protocol for e-mail (e.g., Internet message access protocol (IMAP) and/or post office protocol (POP)), instant messaging (e.g., extensible messaging and presence protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS)), and/or Short Message Service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this document.
Audio circuitry 110, speaker 111, and microphone 113 provide an audio interface between a user and device 100. Audio circuitry 110 receives audio data from peripherals interface 118, converts the audio data to an electrical signal, and transmits the electrical signal to speaker 111. Speaker 111 converts the electrical signal to human-audible sound waves. Audio circuitry 110 also receives electrical signals converted by microphone 113 from sound waves. Audio circuitry 110 converts the electrical signal to audio data and transmits the audio data to peripherals interface 118 for processing. Audio data is, optionally, retrieved from and/or transmitted to memory 102 and/or RF circuitry 108 by peripherals interface 118. In some embodiments, audio circuitry 110 also includes a headset jack (e.g., 212,
I/O subsystem 106 couples input/output peripherals on device 100, such as touch screen 112 and other input control devices 116, to peripherals interface 118. I/O subsystem 106 optionally includes display controller 156, optical sensor controller 158, depth camera controller 169, intensity sensor controller 159, haptic feedback controller 161, and one or more input controllers 160 for other input or control devices. The one or more input controllers 160 receive/send electrical signals from/to other input control devices 116. The other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, and so forth. In some embodiments, input controller(s) 160 are, optionally, coupled to any (or none) of the following: a keyboard, an infrared port, a USB port, and a pointer device such as a mouse. The one or more buttons (e.g., 208,
A quick press of the push button optionally disengages a lock of touch screen 112 or optionally begins a process that uses gestures on the touch screen to unlock the device, as described in U.S. patent application Ser. No. 11/322,549, “Unlocking a Device by Performing Gestures on an Unlock Image,” filed Dec. 23, 2005, U.S. Pat. No. 7,657,849, which is hereby incorporated by reference in its entirety. A longer press of the push button (e.g., 206) optionally turns power to device 100 on or off. The functionality of one or more of the buttons are, optionally, user-customizable. Touch screen 112 is used to implement virtual or soft buttons and one or more soft keyboards.
Touch-sensitive display 112 provides an input interface and an output interface between the device and a user. Display controller 156 receives and/or sends electrical signals from/to touch screen 112. Touch screen 112 displays visual output to the user. The visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively termed “graphics”). In some embodiments, some or all of the visual output optionally corresponds to user-interface objects.
Touch screen 112 has a touch-sensitive surface, sensor, or set of sensors that accepts input from the user based on haptic and/or tactile contact. Touch screen 112 and display controller 156 (along with any associated modules and/or sets of instructions in memory 102) detect contact (and any movement or breaking of the contact) on touch screen 112 and convert the detected contact into interaction with user-interface objects (e.g., one or more soft keys, icons, web pages, or images) that are displayed on touch screen 112. In an exemplary embodiment, a point of contact between touch screen 112 and the user corresponds to a finger of the user.
Touch screen 112 optionally uses LCD (liquid crystal display) technology, LPD (light emitting polymer display) technology, or LED (light emitting diode) technology, although other display technologies are used in other embodiments. Touch screen 112 and display controller 156 optionally detect contact and any movement or breaking thereof using any of a plurality of touch sensing technologies now known or later developed, including but not limited to capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with touch screen 112. In an exemplary embodiment, projected mutual capacitance sensing technology is used, such as that found in the iPhone® and iPod Touch® from Apple Inc. of Cupertino, Calif.
A touch-sensitive display in some embodiments of touch screen 112 is, optionally, analogous to the multi-touch sensitive touchpads described in the following U.S. Pat. No. 6,323,846 (Westerman et al.), U.S. Pat. No. 6,570,557 (Westerman et al.), and/or U.S. Pat. No. 6,677,932 (Westerman), and/or U.S. Patent Publication 2002/0015024A1, each of which is hereby incorporated by reference in its entirety. However, touch screen 112 displays visual output from device 100, whereas touch-sensitive touchpads do not provide visual output.
A 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, “Multipoint Touch Surface Controller,” filed May 2, 2006; (2) U.S. patent application Ser. No. 10/840,862, “Multipoint Touchscreen,” filed May 6, 2004; (3) U.S. patent application Ser. No. 10/903,964, “Gestures For Touch Sensitive Input Devices,” filed Jul. 30, 2004; (4) U.S. patent application Ser. No. 11/048,264, “Gestures For Touch Sensitive Input Devices,” filed Jan. 31, 2005; (5) U.S. patent application Ser. No. 11/038,590, “Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices,” filed Jan. 18, 2005; (6) U.S. patent application Ser. No. 11/228,758, “Virtual Input Device Placement On A Touch Screen User Interface,” filed Sep. 16, 2005; (7) U.S. patent application Ser. No. 11/228,700, “Operation Of A Computer With A Touch Screen Interface,” filed Sep. 16, 2005; (8) U.S. patent application Ser. No. 11/228,737, “Activating Virtual Keys Of A Touch-Screen Virtual Keyboard,” filed Sep. 16, 2005; and (9) U.S. patent application Ser. No. 11/367,749, “Multi-Functional Hand-Held Device,” filed Mar. 3, 2006. All of these applications are incorporated by reference herein in their entirety.
Touch screen 112 optionally has a video resolution in excess of 100 dpi. In some embodiments, the touch screen has a video resolution of approximately 160 dpi. The user optionally makes contact with touch screen 112 using any suitable object or appendage, such as a stylus, a finger, and so forth. In some embodiments, the user interface is designed to work primarily with finger-based contacts and gestures, which can be less precise than stylus-based input due to the larger area of contact of a finger on the touch screen. In some embodiments, the device translates the rough finger-based input into a precise pointer/cursor position or command for performing the actions desired by the user.
In some embodiments, in addition to the touch screen, device 100 optionally includes a touchpad for activating or deactivating particular functions. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike the touch screen, does not display visual output. The touchpad is, optionally, a touch-sensitive surface that is separate from touch screen 112 or an extension of the touch-sensitive surface formed by the touch screen.
Device 100 also includes power system 162 for powering the various components. Power system 162 optionally includes a power management system, one or more power sources (e.g., battery, alternating current (AC)), a recharging system, a power failure detection circuit, a power converter or inverter, a power status indicator (e.g., a light-emitting diode (LED)) and any other components associated with the generation, management and distribution of power in portable devices.
Device 100 optionally also includes one or more optical sensors 164.
Device 100 optionally also includes one or more depth camera sensors 175.
Device 100 optionally also includes one or more contact intensity sensors 165.
Device 100 optionally also includes one or more proximity sensors 166.
Device 100 optionally also includes one or more tactile output generators 167.
Device 100 optionally also includes one or more accelerometers 168.
In some embodiments, the software components stored in memory 102 include operating system 126, communication module (or set of instructions) 128, contact/motion module (or set of instructions) 130, graphics module (or set of instructions) 132, text input module (or set of instructions) 134, Global Positioning System (GPS) module (or set of instructions) 135, and applications (or sets of instructions) 136. Furthermore, in some embodiments, memory 102 (
Operating system 126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, iOS, WINDOWS, or an embedded operating system such as VxWorks) includes various software components and/or drivers for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitates communication between various hardware and software components.
Communication module 128 facilitates communication with other devices over one or more external ports 124 and also includes various software components for handling data received by RF circuitry 108 and/or external port 124. External port 124 (e.g., Universal Serial Bus (USB), FIREWIRE, etc.) is adapted for coupling directly to other devices or indirectly over a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is the same as, or similar to and/or compatible with, the 30-pin connector used on iPod® (trademark of Apple Inc.) devices.
Contact/motion module 130 optionally detects contact with touch screen 112 (in conjunction with display controller 156) and other touch-sensitive devices (e.g., a touchpad or physical click wheel). Contact/motion module 130 includes various software components for performing various operations related to detection of contact, such as determining if contact has occurred (e.g., detecting a finger-down event), determining an intensity of the contact (e.g., the force or pressure of the contact or a substitute for the force or pressure of the contact), determining if there is movement of the contact and tracking the movement across the touch-sensitive surface (e.g., detecting one or more finger-dragging events), and determining if the contact has ceased (e.g., detecting a finger-up event or a break in contact). Contact/motion module 130 receives contact data from the touch-sensitive surface. Determining movement of the point of contact, which is represented by a series of contact data, optionally includes determining speed (magnitude), velocity (magnitude and direction), and/or an acceleration (a change in magnitude and/or direction) of the point of contact. These operations are, optionally, applied to single contacts (e.g., one finger contacts) or to multiple simultaneous contacts (e.g., “multitouch”/multiple finger contacts). In some embodiments, contact/motion module 130 and display controller 156 detect contact on a touchpad.
In some embodiments, contact/motion module 130 uses a set of one or more intensity thresholds to determine whether an operation has been performed by a user (e.g., to determine whether a user has “clicked” on an icon). In some embodiments, at least a subset of the intensity thresholds are determined in accordance with software parameters (e.g., the intensity thresholds are not determined by the activation thresholds of particular physical actuators and can be adjusted without changing the physical hardware of device 100). For example, a mouse “click” threshold of a trackpad or touch screen display can be set to any of a large range of predefined threshold values without changing the trackpad or touch screen display hardware. Additionally, in some implementations, a user of the device is provided with software settings for adjusting one or more of the set of intensity thresholds (e.g., by adjusting individual intensity thresholds and/or by adjusting a plurality of intensity thresholds at once with a system-level click “intensity” parameter).
Contact/motion module 130 optionally detects a gesture input by a user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different motions, timings, and/or intensities of detected contacts). Thus, a gesture is, optionally, detected by detecting a particular contact pattern. For example, detecting a finger tap gesture includes detecting a finger-down event followed by detecting a finger-up (liftoff) event at the same position (or substantially the same position) as the finger-down event (e.g., at the position of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger-down event followed by detecting one or more finger-dragging events, and subsequently followed by detecting a finger-up (liftoff) event.
Graphics module 132 includes various known software components for rendering and displaying graphics on touch screen 112 or other display, including components for changing the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual property) of graphics that are displayed. As used herein, the term “graphics” includes any object that can be displayed to a user, including, without limitation, text, web pages, icons (such as user-interface objects including soft keys), digital images, videos, animations, and the like.
In some embodiments, graphics module 132 stores data representing graphics to be used. Each graphic is, optionally, assigned a corresponding code. Graphics module 132 receives, from applications etc., one or more codes specifying graphics to be displayed along with, if necessary, coordinate data and other graphic property data, and then generates screen image data to output to display controller 156.
Haptic feedback module 133 includes various software components for generating instructions used by tactile output generator(s) 167 to produce tactile outputs at one or more locations on device 100 in response to user interactions with device 100.
Text input module 134, which is, optionally, a component of graphics module 132, provides soft keyboards for entering text in various applications (e.g., contacts 137, e-mail 140, IM 141, browser 147, and any other application that needs text input).
GPS module 135 determines the location of the device and provides this information for use in various applications (e.g., to telephone 138 for use in location-based dialing; to camera 143 as picture/video metadata; and to applications that provide location-based services such as weather widgets, local yellow page widgets, and map/navigation widgets).
Applications 136 optionally include the following modules (or sets of instructions), or a subset or superset thereof:
Examples of other applications 136 that are, optionally, stored in memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA-enabled applications, encryption, digital rights management, voice recognition, and voice replication.
In conjunction with touch screen 112, display controller 156, contact/motion module 130, graphics module 132, and text input module 134, contacts module 137 are, optionally, used to manage an address book or contact list (e.g., stored in application internal state 192 of contacts module 137 in memory 102 or memory 370), including: adding name(s) to the address book; deleting name(s) from the address book; associating telephone number(s), e-mail address(es), physical address(es) or other information with a name; associating an image with a name; categorizing and sorting names; providing telephone numbers or e-mail addresses to initiate and/or facilitate communications by telephone 138, video conference module 139, e-mail 140, or IM 141; and so forth.
In conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, display controller 156, contact/motion module 130, graphics module 132, and text input module 134, telephone module 138 are optionally, used to enter a sequence of characters corresponding to a telephone number, access one or more telephone numbers in contacts module 137, modify a telephone number that has been entered, dial a respective telephone number, conduct a conversation, and disconnect or hang up when the conversation is completed. As noted above, the wireless communication optionally uses any of a plurality of communications standards, protocols, and technologies.
In conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, display controller 156, optical sensor 164, optical sensor controller 158, contact/motion module 130, graphics module 132, text input module 134, contacts module 137, and telephone module 138, video conference module 139 includes executable instructions to initiate, conduct, and terminate a video conference between a user and one or more other participants in accordance with user instructions.
In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact/motion module 130, graphics module 132, and text input module 134, e-mail client module 140 includes executable instructions to create, send, receive, and manage e-mail in response to user instructions. In conjunction with image management module 144, e-mail client module 140 makes it very easy to create and send e-mails with still or video images taken with camera module 143.
In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact/motion module 130, graphics module 132, and text input module 134, the instant messaging module 141 includes executable instructions to enter a sequence of characters corresponding to an instant message, to modify previously entered characters, to transmit a respective instant message (for example, using a Short Message Service (SMS) or Multimedia Message Service (MMS) protocol for telephony-based instant messages or using XMPP, SIMPLE, or IMPS for Internet-based instant messages), to receive instant messages, and to view received instant messages. In some embodiments, transmitted and/or received instant messages optionally include graphics, photos, audio files, video files and/or other attachments as are supported in an MMS and/or an Enhanced Messaging Service (EMS). As used herein, “instant messaging” refers to both telephony-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).
In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact/motion module 130, graphics module 132, text input module 134, GPS module 135, map module 154, and music player module, workout support module 142 includes executable instructions to create workouts (e.g., with time, distance, and/or calorie burning goals); communicate with workout sensors (sports devices); receive workout sensor data; calibrate sensors used to monitor a workout; select and play music for a workout; and display, store, and transmit workout data.
In conjunction with touch screen 112, display controller 156, optical sensor(s) 164, optical sensor controller 158, contact/motion module 130, graphics module 132, and image management module 144, camera module 143 includes executable instructions to capture still images or video (including a video stream) and store them into memory 102, modify characteristics of a still image or video, or delete a still image or video from memory 102.
In conjunction with touch screen 112, display controller 156, contact/motion module 130, graphics module 132, text input module 134, and camera module 143, image management module 144 includes executable instructions to arrange, modify (e.g., edit), or otherwise manipulate, label, delete, present (e.g., in a digital slide show or album), and store still and/or video images.
In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact/motion module 130, graphics module 132, and text input module 134, browser module 147 includes executable instructions to browse the Internet in accordance with user instructions, including searching, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.
In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact/motion module 130, graphics module 132, text input module 134, e-mail client module 140, and browser module 147, calendar module 148 includes executable instructions to create, display, modify, and store calendars and data associated with calendars (e.g., calendar entries, to-do lists, etc.) in accordance with user instructions.
In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact/motion module 130, graphics module 132, text input module 134, and browser module 147, widget modules 149 are mini-applications that are, optionally, downloaded and used by a user (e.g., weather widget 149-1, stocks widget 149-2, calculator widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5) or created by the user (e.g., user-created widget 149-6). In some embodiments, a widget includes an HTML (Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, a widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., Yahoo! Widgets).
In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact/motion module 130, graphics module 132, text input module 134, and browser module 147, the widget creator module 150 are, optionally, used by a user to create widgets (e.g., turning a user-specified portion of a web page into a widget).
In conjunction with touch screen 112, display controller 156, contact/motion module 130, graphics module 132, and text input module 134, search module 151 includes executable instructions to search for text, music, sound, image, video, and/or other files in memory 102 that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with user instructions.
In conjunction with touch screen 112, display controller 156, contact/motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, video and music player module 152 includes executable instructions that allow the user to download and play back recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, and executable instructions to display, present, or otherwise play back videos (e.g., on touch screen 112 or on an external, connected display via external port 124). In some embodiments, device 100 optionally includes the functionality of an MP3 player, such as an iPod (trademark of Apple Inc.).
In conjunction with touch screen 112, display controller 156, contact/motion module 130, graphics module 132, and text input module 134, notes module 153 includes executable instructions to create and manage notes, to-do lists, and the like in accordance with user instructions.
In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact/motion module 130, graphics module 132, text input module 134, GPS module 135, and browser module 147, map module 154 are, optionally, used to receive, display, modify, and store maps and data associated with maps (e.g., driving directions, data on stores and other points of interest at or near a particular location, and other location-based data) in accordance with user instructions.
In conjunction with touch screen 112, display controller 156, contact/motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, text input module 134, e-mail client module 140, and browser module 147, online video module 155 includes instructions that allow the user to access, browse, receive (e.g., by streaming and/or download), play back (e.g., on the touch screen or on an external, connected display via external port 124), send an e-mail with a link to a particular online video, and otherwise manage online videos in one or more file formats, such as H.264. In some embodiments, instant messaging module 141, rather than e-mail client module 140, is used to send a link to a particular online video. Additional description of the online video application can be found in U.S. Provisional Patent Application No. 60/936,562, “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos,” filed Jun. 20, 2007, and U.S. patent application Ser. No. 11/968,067, “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos,” filed Dec. 31, 2007, the contents of which are hereby incorporated by reference in their entirety.
Each of the above-identified modules and applications corresponds to a set of executable instructions for performing one or more functions described above and the methods described in this application (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., sets of instructions) need not be implemented as separate software programs (such as computer programs (e.g., including instructions)), procedures, or modules, and thus various subsets of these modules are, optionally, combined or otherwise rearranged in various embodiments. For example, video player module is, optionally, combined with music player module into a single module (e.g., video and music player module 152,
In some embodiments, device 100 is a device where operation of a predefined set of functions on the device is performed exclusively through a touch screen and/or a touchpad. By using a touch screen and/or a touchpad as the primary input control device for operation of device 100, the number of physical input control devices (such as push buttons, dials, and the like) on device 100 is, optionally, reduced.
The predefined set of functions that are performed exclusively through a touch screen and/or a touchpad optionally include navigation between user interfaces. In some embodiments, the touchpad, when touched by the user, navigates device 100 to a main, home, or root menu from any user interface that is displayed on device 100. In such embodiments, a “menu button” is implemented using a touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device instead of a touchpad.
Event sorter 170 receives event information and determines the application 136-1 and application view 191 of application 136-1 to which to deliver the event information. Event sorter 170 includes event monitor 171 and event dispatcher module 174. In some embodiments, application 136-1 includes application internal state 192, which indicates the current application view(s) displayed on touch-sensitive display 112 when the application is active or executing. In some embodiments, device/global internal state 157 is used by event sorter 170 to determine which application(s) is (are) currently active, and application internal state 192 is used by event sorter 170 to determine application views 191 to which to deliver event information.
In some embodiments, application internal state 192 includes additional information, such as one or more of: resume information to be used when application 136-1 resumes execution, user interface state information that indicates information being displayed or that is ready for display by application 136-1, a state queue for enabling the user to go back to a prior state or view of application 136-1, and a redo/undo queue of previous actions taken by the user.
Event monitor 171 receives event information from peripherals interface 118. Event information includes information about a sub-event (e.g., a user touch on touch-sensitive display 112, as part of a multi-touch gesture). Peripherals interface 118 transmits information it receives from I/O subsystem 106 or a sensor, such as proximity sensor 166, accelerometer(s) 168, and/or microphone 113 (through audio circuitry 110). Information that peripherals interface 118 receives from I/O subsystem 106 includes information from touch-sensitive display 112 or a touch-sensitive surface.
In some embodiments, event monitor 171 sends requests to the peripherals interface 118 at predetermined intervals. In response, peripherals interface 118 transmits event information. In other embodiments, peripherals interface 118 transmits event information only when there is a significant event (e.g., receiving an input above a predetermined noise threshold and/or for more than a predetermined duration).
In some embodiments, event sorter 170 also includes a hit view determination module 172 and/or an active event recognizer determination module 173.
Hit view determination module 172 provides software procedures for determining where a sub-event has taken place within one or more views when touch-sensitive display 112 displays more than one view. Views are made up of controls and other elements that a user can see on the display.
Another aspect of the user interface associated with an application is a set of views, sometimes herein called application views or user interface windows, in which information is displayed and touch-based gestures occur. The application views (of a respective application) in which a touch is detected optionally correspond to programmatic levels within a programmatic or view hierarchy of the application. For example, the lowest level view in which a touch is detected is, optionally, called the hit view, and the set of events that are recognized as proper inputs are, optionally, determined based, at least in part, on the hit view of the initial touch that begins a touch-based gesture.
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 a hit view as the lowest view in the hierarchy which should handle the sub-event. In most circumstances, the hit view is the lowest level view in which an initiating sub-event occurs (e.g., the first sub-event in the sequence of sub-events that form an event or potential event). Once the hit view is identified by the hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source for which it was identified as the hit view.
Active event recognizer determination module 173 determines which view or views within a view hierarchy should receive a particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, active event recognizer determination module 173 determines that all views that include the physical location of a sub-event are actively involved views, and therefore determines that all actively involved views should receive a particular sequence of sub-events. In other embodiments, even if touch sub-events were entirely confined to the area associated with one particular view, views higher in the hierarchy would still remain as actively involved views.
Event dispatcher module 174 dispatches the event information to an event recognizer (e.g., event recognizer 180). In embodiments including active event recognizer determination module 173, event dispatcher module 174 delivers the event information to an event recognizer determined by active event recognizer determination module 173. In some embodiments, event dispatcher module 174 stores in an event queue the event information, which is retrieved by a respective event receiver 182.
In some embodiments, operating system 126 includes event sorter 170. Alternatively, application 136-1 includes event sorter 170. In yet other embodiments, event sorter 170 is a stand-alone module, or a part of another module stored in memory 102, such as contact/motion module 130.
In some embodiments, application 136-1 includes a plurality of event handlers 190 and one or more application views 191, each of which includes instructions for handling touch events that occur within a respective view of the application's user interface. Each application view 191 of the application 136-1 includes one or more event recognizers 180. Typically, a respective application view 191 includes a plurality of event recognizers 180. In other embodiments, one or more of event recognizers 180 are part of a separate module, such as a user interface kit or a higher level object from which application 136-1 inherits methods and other properties. In some embodiments, a respective event handler 190 includes one or more of: data updater 176, object updater 177, GUI updater 178, and/or event data 179 received from event sorter 170. Event handler 190 optionally utilizes or calls data updater 176, object updater 177, or GUI updater 178 to update the application internal state 192. Alternatively, one or more of the application views 191 include one or more respective event handlers 190. Also, in some embodiments, one or more of data updater 176, object updater 177, and GUI updater 178 are included in a respective application view 191.
A respective event recognizer 180 receives event information (e.g., event data 179) from event sorter 170 and identifies an event from the event information. Event recognizer 180 includes event receiver 182 and event comparator 184. In some embodiments, event recognizer 180 also includes at least a subset of: metadata 183, and event delivery instructions 188 (which optionally include sub-event delivery instructions).
Event receiver 182 receives event information from event sorter 170. The event information includes information about a sub-event, for example, a touch or a touch movement. Depending on the sub-event, the event information also includes additional information, such as location of the sub-event. When the sub-event concerns motion of a touch, the event information optionally also includes speed and direction of the sub-event. In some embodiments, events include rotation of the device from one orientation to another (e.g., from a portrait orientation to a landscape orientation, or vice versa), and the event information includes corresponding information about the current orientation (also called device attitude) of the device.
Event comparator 184 compares the event information to predefined event or sub-event definitions and, based on the comparison, determines an event or sub-event, or determines or updates the state of an event or sub-event. In some embodiments, event comparator 184 includes event definitions 186. Event definitions 186 contain definitions of events (e.g., predefined sequences of sub-events), for example, event 1 (187-1), event 2 (187-2), and others. In some embodiments, sub-events in an event (187) include, for example, touch begin, touch end, touch movement, touch cancellation, and multiple touching. In one example, the definition for event 1 (187-1) is a double tap on a displayed object. The double tap, for example, comprises a first touch (touch begin) on the displayed object for a predetermined phase, a first liftoff (touch end) for a predetermined phase, a second touch (touch begin) on the displayed object for a predetermined phase, and a second liftoff (touch end) for a predetermined phase. In another example, the definition for event 2 (187-2) is a dragging on a displayed object. The dragging, for example, comprises a touch (or contact) on the displayed object for a predetermined phase, a movement of the touch across touch-sensitive display 112, and liftoff of the touch (touch end). In some embodiments, the event also includes information for one or more associated event handlers 190.
In some embodiments, event definition 187 includes a definition of an event for a respective user-interface object. In some embodiments, event comparator 184 performs a hit test to determine which user-interface object is associated with a sub-event. For example, in an application view in which three user-interface objects are displayed on touch-sensitive display 112, when a touch is detected on touch-sensitive display 112, event comparator 184 performs a hit test to determine which of the three user-interface objects is associated with the touch (sub-event). If each displayed object is associated with a respective event handler 190, the event comparator uses the result of the hit test to determine which event handler 190 should be activated. For example, event comparator 184 selects an event handler associated with the sub-event and the object triggering the hit test.
In some embodiments, the definition for a respective event (187) also includes delayed actions that delay delivery of the event information until after it has been determined whether the sequence of sub-events does or does not correspond to the event recognizer's event type.
When a respective event recognizer 180 determines that the series of sub-events do not match any of the events in event definitions 186, the respective event recognizer 180 enters an event impossible, event failed, or event ended state, after which it disregards subsequent sub-events of the touch-based gesture. In this situation, other event recognizers, if any, that remain active for the hit view continue to track and process sub-events of an ongoing touch-based gesture.
In some embodiments, a respective event recognizer 180 includes metadata 183 with configurable properties, flags, and/or lists that indicate how the event delivery system should perform sub-event delivery to actively involved event recognizers. In some embodiments, metadata 183 includes configurable properties, flags, and/or lists that indicate how event recognizers interact, or are enabled to interact, with one another. In some embodiments, metadata 183 includes configurable properties, flags, and/or lists that indicate whether sub-events are delivered to varying levels in the view or programmatic hierarchy.
In some embodiments, a respective event recognizer 180 activates event handler 190 associated with an event when one or more particular sub-events of an event are recognized. In some embodiments, a respective event recognizer 180 delivers event information associated with the event to event handler 190. Activating an event handler 190 is distinct from sending (and deferred sending) sub-events to a respective hit view. In some embodiments, event recognizer 180 throws a flag associated with the recognized event, and event handler 190 associated with the flag catches the flag and performs a predefined process.
In some embodiments, event delivery instructions 188 include sub-event delivery instructions that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery instructions deliver event information to event handlers associated with the series of sub-events or to actively involved views. Event handlers associated with the series of sub-events or with actively involved views receive the event information and perform a predetermined process.
In some embodiments, data updater 176 creates and updates data used in application 136-1. For example, data updater 176 updates the telephone number used in contacts module 137, or stores a video file used in video player module. In some embodiments, object updater 177 creates and updates objects used in application 136-1. For example, object updater 177 creates a new user-interface object or updates the position of a user-interface object. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends it to graphics module 132 for display on a touch-sensitive display.
In some embodiments, event handler(s) 190 includes or has access to data updater 176, object updater 177, and GUI updater 178. In some embodiments, data updater 176, object updater 177, and GUI updater 178 are included in a single module of a respective application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.
It shall be understood that the foregoing discussion regarding event handling of user touches on touch-sensitive displays also applies to other forms of user inputs to operate multifunction devices 100 with input devices, not all of which are initiated on touch screens. For example, mouse movement and mouse button presses, optionally coordinated with single or multiple keyboard presses or holds; contact movements such as taps, drags, scrolls, etc. on touchpads; pen stylus inputs; movement of the device; oral instructions; detected eye movements; biometric inputs; and/or any combination thereof are optionally utilized as inputs corresponding to sub-events which define an event to be recognized.
Device 100 optionally also include one or more physical buttons, such as “home” or menu button 204. As described previously, menu button 204 is, optionally, used to navigate to any application 136 in a set of applications that are, optionally, executed on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on touch screen 112.
In some embodiments, device 100 includes touch screen 112, menu button 204, push button 206 for powering the device on/off and locking the device, volume adjustment button(s) 208, subscriber identity module (SIM) card slot 210, headset jack 212, and docking/charging external port 124. Push button 206 is, optionally, used to turn the power on/off on the device by depressing the button and holding the button in the depressed state for a predefined time interval; to lock the device by depressing the button and releasing the button before the predefined time interval has elapsed; and/or to unlock the device or initiate an unlock process. In an alternative embodiment, device 100 also accepts verbal input for activation or deactivation of some functions through microphone 113. Device 100 also, optionally, includes one or more contact intensity sensors 165 for detecting intensity of contacts on touch screen 112 and/or one or more tactile output generators 167 for generating tactile outputs for a user of device 100.
Each of the above-identified elements in
Attention is now directed towards embodiments of user interfaces that are, optionally, implemented on, for example, portable multifunction device 100.
It should be noted that the icon labels illustrated in
Although some of the examples that follow will be given with reference to inputs on touch screen display 112 (where the touch-sensitive surface and the display are combined), in some embodiments, the device detects inputs on a touch-sensitive surface that is separate from the display, as shown in
Additionally, while the following examples are given primarily with reference to finger inputs (e.g., finger contacts, finger tap gestures, finger swipe gestures), it should be understood that, in some embodiments, one or more of the finger inputs are replaced with input from another input device (e.g., a mouse-based input or stylus input). For example, a swipe gesture is, optionally, replaced with a mouse click (e.g., instead of a contact) followed by movement of the cursor along the path of the swipe (e.g., instead of movement of the contact). As another example, a tap gesture is, optionally, replaced with a mouse click while the cursor is located over the location of the tap gesture (e.g., instead of detection of the contact followed by ceasing to detect the contact). Similarly, when multiple user inputs are simultaneously detected, it should be understood that multiple computer mice are, optionally, used simultaneously, or a mouse and finger contacts are, optionally, used simultaneously.
Exemplary techniques for detecting and processing touch intensity are found, for example, in related applications: International Patent Application Serial No. PCT/US2013/040061, titled “Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application,” filed May 8, 2013, published as WIPO Publication No. WO/2013/169849, and International Patent Application Serial No. PCT/US2013/069483, titled “Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships,” filed Nov. 11, 2013, published as WIPO Publication No. WO/2014/105276, each of which is hereby incorporated by reference in their entirety.
In some embodiments, device 500 has one or more input mechanisms 506 and 508. Input mechanisms 506 and 508, if included, can be physical. Examples of physical input mechanisms include push buttons and rotatable mechanisms. In some embodiments, device 500 has one or more attachment mechanisms. Such attachment mechanisms, if included, can permit attachment of device 500 with, for example, hats, eyewear, earrings, necklaces, shirts, jackets, bracelets, watch straps, chains, trousers, belts, shoes, purses, backpacks, and so forth. These attachment mechanisms permit device 500 to be worn by a user.
Input mechanism 508 is, optionally, a microphone, in some examples. Personal electronic device 500 optionally includes various sensors, such as GPS sensor 532, accelerometer 534, directional sensor 540 (e.g., compass), gyroscope 536, motion sensor 538, and/or a combination thereof, all of which can be operatively connected to I/O section 514.
Memory 518 of personal electronic device 500 can include one or more non-transitory computer-readable storage mediums, for storing computer-executable instructions, which, when executed by one or more computer processors 516, for example, can cause the computer processors to perform the techniques described below, including processes 700-1300 and 1500-1800 (
As used here, the term “affordance” refers to a user-interactive graphical user interface object that is, optionally, displayed on the display screen of devices 100, 300, and/or 500 (
As used herein, the term “focus selector” refers to an input element that indicates a current part of a user interface with which a user is interacting. In some implementations that include a cursor or other location marker, the cursor acts as a “focus selector” so that when an input (e.g., a press input) is detected on a touch-sensitive surface (e.g., touchpad 355 in
As used in the specification and claims, the term “characteristic intensity” of a contact refers to a characteristic of the contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on multiple intensity samples. The characteristic intensity is, optionally, based on a predefined number of intensity samples, or a set of intensity samples collected during a predetermined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) relative to a predefined event (e.g., after detecting the contact, prior to detecting liftoff of the contact, before or after detecting a start of movement of the contact, prior to detecting an end of the contact, before or after detecting an increase in intensity of the contact, and/or before or after detecting a decrease in intensity of the contact). A characteristic intensity of a contact is, optionally, based on one or more of: a maximum value of the intensities of the contact, a mean value of the intensities of the contact, an average value of the intensities of the contact, a top 10 percentile value of the intensities of the contact, a value at the half maximum of the intensities of the contact, a value at the 90 percent maximum of the intensities of the contact, or the like. In some embodiments, the duration of the contact is used in determining the characteristic intensity (e.g., when the characteristic intensity is an average of the intensity of the contact over time). In some embodiments, the characteristic intensity is compared to a set of one or more intensity thresholds to determine whether an operation has been performed by a user. For example, the set of one or more intensity thresholds optionally includes a first intensity threshold and a second intensity threshold. In this example, a contact with a characteristic intensity that does not exceed the first threshold results in a first operation, a contact with a characteristic intensity that exceeds the first intensity threshold and does not exceed the second intensity threshold results in a second operation, and a contact with a characteristic intensity that exceeds the second threshold results in a third operation. In some embodiments, a comparison between the characteristic intensity and one or more thresholds is used to determine whether or not to perform one or more operations (e.g., whether to perform a respective operation or forgo performing the respective operation), rather than being used to determine whether to perform a first operation or a second operation.
As used herein, an “installed application” refers to a software application that has been downloaded onto an electronic device (e.g., devices 100, 300, and/or 500) and is ready to be launched (e.g., become opened) on the device. In some embodiments, a downloaded application becomes an installed application by way of an installation program that extracts program portions from a downloaded package and integrates the extracted portions with the operating system of the computer system.
As used herein, the terms “open application” or “executing application” refer to a software application with retained state information (e.g., as part of device/global internal state 157 and/or application internal state 192). An open or executing application is, optionally, any one of the following types of applications:
As used herein, the term “closed application” refers to software applications without retained state information (e.g., state information for closed applications is not stored in a memory of the device). Accordingly, closing an application includes stopping and/or removing application processes for the application and removing state information for the application from the memory of the device. Generally, opening a second application while in a first application does not close the first application. When the second application is displayed and the first application ceases to be displayed, the first application becomes a background application.
In
Device 500A displays, via display 504A, communication UI 520A, which is a user interface for facilitating a communication session (e.g., a video conference session) between device 500B and device 500C. Communication 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 communication 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 communication session.
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 prospective video feed of User A that is displayed at respective devices 500B and 500C.
Communication UI 520A includes one or more controls 555A for controlling one or more aspects of the communication session. For example, controls 555A can include controls for muting audio for the communication session, changing a camera view for the communication session (e.g., changing which camera is used for capturing video for the communication session, adjusting a zoom value), terminating the communication session, applying visual effects to the camera view for the communication session, activating one or more modes associated with the communication session. In some embodiments, one or more controls 555A are optionally displayed in communication UI 520A. In some embodiments, one or more controls 555A are displayed separate from camera preview 550A. In some embodiments, one or more controls 555A are displayed overlaying at least a portion of camera preview 550A.
In
Device 500B displays, via touchscreen 504B, communication UI 520B, which is similar to communication UI 520A of device 500A. Communication 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 communication 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 communication session. Communication 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 for controlling one or more aspects of the communication session, similar to controls 555A. Camera preview 550B represents to User B the prospective video feed of User B that is displayed at respective devices 500A and 500C.
In
Device 500C displays, via touchscreen 504C, communication UI 520C, which is 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. Communication 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 communication session, similar to controls 555A and 555B. Camera preview 550C represents to User C the prospective video feed of User C that is displayed at respective devices 500A and 500B.
While the diagram depicted in
The embodiment depicted in
Attention is now directed towards embodiments of user interfaces (“UI”) and associated processes that are implemented on an electronic device, such as portable multifunction device 100, device 300, or device 500.
The present disclosure describes embodiments for managing a shared-content session (also referred to as a sharing session) in which respective content can be concurrently output at multiple devices participating in the shared-content session. In some embodiments, the respective content is screen-share content. For example, the content of a host device's displayed screen is shared with participants of the shared-content session such that the participants can view, at their respective devices, the screen content of the host device (the sharing device, or, the device whose screen content is being shared), including any changes to the displayed screen content, in real time. In some embodiments, the respective content is synchronized content that is output concurrently at the respective devices of the participants of the shared-content session. For example, the respective devices of the participants separately access the respective content (e.g., a video, a movie, a TV show, and/or a song) from a remote server and/or local memory and are synchronized in their respective output of the content such that the content is output (e.g., via an application local to the respective devices) concurrently at the respective devices as each device separately accesses the respective content from the remote server(s) and/or local memory. In some embodiments, the respective devices exchange information (e.g., via a server) to facilitate synchronization. For example, the respective devices can share play state and/or playback location information of the content, as well as indications of local commands (e.g., play, pause, stop, fast forward, and/or rewind) in order to implement the commands on the output of the content on other devices. Sharing play state and/or playback location information is more efficient and effective for synchronizing the content at the respective devices, because the host device is not transmitting the content to the respective devices, but rather, smaller data packets containing the play state and/or playback location information. Additionally, each respective device outputs the content at a size and quality that is appropriate for the respective device and connectivity (e.g., data connection conditions such as data transmission and/or processing speeds) of the device, thereby providing a more customized, yet synchronized, playback experience at each of the respective devices. In some embodiments, an application (or “app”) is available (e.g., downloaded and/or installed) at a respective device to enable the device to participate in shared-content sessions.
As discussed herein, the term “share,” “sharing,” or “shared” is used generally to refer to a situation in which content (e.g., screen-share content and/or synchronized content) is, or is capable of, being output (e.g., viewed and/or played) concurrently at multiple devices that are participating in a shared-content session. Unless specifically noted otherwise, these terms do not require that the content being “shared” is 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 that is being shared in the shared-content session is content that is separately accessed by each respective device, for example, 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 at devices participating in the shared-content session, the movie is said to be shared with the participants, even though the respective participants are accessing (e.g., from a movie application) and playing the movie separate from (but concurrently with) the other participants in the shared-content session. In some embodiments, screen-share content is shared with participants of the shared-content session by transmitting, from a host device, image data representing content displayed on a display screen of the host device to other devices participating in the shared-content session.
In some embodiments, one or more audio channels are active (e.g., open) during the shared-content session such that participants of the shared-content session can speak to one another in real time while the shared-content session is ongoing and, optionally, while content is being shared (e.g., screen-share content and/or synchronized content) via the shared-content session. In some embodiments, one or more video channels are open (e.g., via a video conferencing application that is local to respective devices) such that participants of the shared-content session can participate in a 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 a shared-content session, are discussed below with reference to the figures.
In the embodiments provided herein, John's device 6000A can be described as performing a set of functions associated with the shared-content session, and Jane's device 6000B can be described as performing a different set of functions associated with the shared-content session. These descriptions are not intended to limit the functions performed by the respective devices, but rather, are provided to illustrate various aspects and embodiments of a shared-content session. Thus, unless specified otherwise, the functions that are described as being performed by John's device 6000A are similarly capable of being performed by Jane's device 6000B and the devices of other participants in the shared-content session. Similarly, the functions that are described as being performed by Jane's device 6000B are similarly capable of being performed by John's device 6000A and the devices of other participants in the shared-content session, unless specified otherwise.
In
In
In
Control region 6015A provides information associated with the shared-content session. As depicted in
In some embodiments, an appearance of sharing option 6015A-8 is used to indicate a playback status of content and/or playback settings for media output during the shared-content session. For example, in some embodiments, sharing option 6015A-8 is shown in a bolded (or otherwise visually emphasized) state when content is being output via the shared-content session (e.g., when screen-share content or synchronized content is being output), and is unbolded (or otherwise visually deemphasized) when screen-share or synchronized content is not being output during the shared-content session. In some embodiments, sharing option 6015A-8 is bolded or unbolded to indicate various playback settings, such as settings for determining whether to prompt the user to share selected media with the participants of the shared-content session, as discussed in greater detail below. In some embodiments, sharing option 6015A-8 can be selected to change playback settings, as discussed in greater detail below.
In response to John initiating the shared-content session, members of the Mountaineers group receive an invitation to join the shared-content session. Because Jane is a member of the Mountaineers group, Jane's device 6000B displays invitation 6012, which contains information about the shared-content session and invites Jane to join the shared-content session.
As depicted in
In response to detecting input 6016, Jane's device 6000B displays messages interface 6004B, including messages 6004B-1 of the ongoing group conversation and dynamic graphic 6010B displayed in message display region 6004B-3. Dynamic graphic 6010B is similar to dynamic graphic 6010A, however, 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 the shared-content session, dynamic graphic 6010B includes join option 6010B-1, which is selectable to join the shared-content session. Additionally, dynamic graphic 6010B indicates that one person has joined the shared-content session.
In
In
After joining the shared-content session, Jane's device 6000B displays control region 6015B, and displays messages 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 now active (John and Jane joined) in the shared-content session. Control region 6015B is similar to control region 6015A, and is updated in
In
Referring to John's device 6000A in
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 sharing pill 6020A, John's device 6000A displays control region 6015A, as depicted in
In
In response to detecting input 6034 on messages option 6015A-4, John's device 6000A displays messages interface 6004A, as depicted in
In
Group card interface 6038A provides information about the Mountaineers group and content that has been output during the current shared-content session and past shared-content sessions for the group, including identifying information 6038A-1 such as a logo, name, picture, etc. Group card interface 6038A includes status information 6040A (including leave option 6040-1 that is selectable to leave the shared-content session), a listing of members 6042A of the Mountaineers group, and add contact option 6044A that is selectable to add a contact to the Mountaineers group. The listing of members 6042A includes the names of the other group members, along with status information 6046 for the respective members. For example, in
In
In
In
At the end of the countdown, Jane's device 6000B begins sharing the content of its screen with the members of the Mountaineers group and updates control region 6015B to indicate the screen-sharing status of Jane's device 6000B, as shown in
John's device 6000A displays screen-share window 6070 and notification 6072 indicating that Jane has started sharing the content of her device's screen. In some embodiments, notification 6072 automatically dismisses after a predetermined amount of time. Screen-share window 6070 is a real-time representation of the content that is currently displayed on Jane's device 6000B. Accordingly, because Jane's device 6000B is currently displaying browser interface 6060, screen-share window 6070 includes representation 6060′ of browser interface 6060. Screen-share window 6070 is displayed over home screen 6018 such that John's device 6000A displays screen-share window 6070 with home screen 6018 in the background. In some embodiments, screen-share window 6070 is automatically displayed over the user interface that is currently displayed at John's device 6000A when the screen sharing begins. For example, if John's device 6000A was displaying messages interface 6004A when Jane's device 6000B began sharing its screen, screen-share window 6070 would be displayed over the messages interface.
Screen-share 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 over which it is displayed. In some embodiments, such windows are referred to herein as a picture-in-picture window or “PiP.” In some embodiments, a PiP can include shared content such as screen-share content and/or synchronized content. In some embodiments, a PiP can include content that is independent of a shared-content session such as a video feed from a video conference (although, in some embodiments, such PiPs can be displayed in connection with a shared-content session).
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 region 6015B, as depicted in
In
In
In some embodiments, some notifications are suppressed while control region 6015 is displayed. For example, in
In
John's device 6000A continues to display control region 6015A, and John speaks while the microphone for the shared-content session (e.g., microphone 6003A) is muted, as indicated by mute glyph 6090. Accordingly, John's voice 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-share window 6070.
In
In
John's device 6000A displays notification 6098 in response to detecting John speaking while the mic is muted. Notification 6098 and a notification similar to notification 6086 were suppressed (e.g., stored in a queue) on John's device 6000A while control region 6015A was displayed. However, because control region 6015A is no longer displayed in
In some embodiments, notifications are prioritized in different tiers based on the type of the notification. For example, notifications triggered by user action are attributed a highest level of priority (e.g., Tier 1). Examples of user actions that trigger Tier 1 notifications include interactions with elements of control region 6015 (e.g., audio routing, microphone on/off, camera on/off, local screen sharing on/off). Notifications indicating that the microphone is muted are, 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 in the shared-content session are attributed a lower level of priority (e.g., Tier 3). Examples of Tier 2 notifications can include account updates (e.g., announcing that a user joined the shared-content session), notifications that content is playing only for the user of the device, notifications for applications supporting the shared-content session application, playback actions, queue actions, remote screen-sharing actions, and reminder notifications related to the shared-content session (e.g., a reminder that members of the shared-content session are still playing content after the user stops playing private content).
In some embodiments, some types of notifications replace one another when they are displayed. For example, notifications that content is “playing only for me,” notifications associated with apps that support shared-content sessions, playback actions, queue actions, remote screen-sharing actions, and reminder notifications related to the shared-content session replace one another and, in some embodiments, expire after three seconds. In some embodiments, some notifications can be coalesced and, optionally have no expiration. For example, if five users join a shared-content session, a single notification can be displayed that says a user and four others joined.
In some embodiments, notifications related to playback actions, queue actions, and remote sharing actions have a higher priority than reminder notifications related to the shared-content session. In some embodiments, notifications for apps that support shared-content sessions have a higher priority than notifications related to playback actions, queue actions, and remote sharing actions. In some embodiments, notifications that content is “playing only 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 “playing only for me.”
In response to detecting input 6104, John's device 6000A displays screen-share window 6070 in an enlarged, expanded and/or full-screen state (or using all of the screen outside of a portion of the screen designated for system status information and/or system controls), thereby presenting a full screen view of Jane's screen. Control region 6015A is again displayed when screen-share window 6070 is enlarged, indicating in control region status region 6015A-1 that Jane is sharing her screen with members of the Mountaineers group. It should be appreciated, however, that while Jane is sharing the contents of her screen, the shared content can be manipulated at each respective device viewing the contents of her screen in the shared-content session. For example, while John is viewing Jane's screen-share content in an expanded or full-screen state, other participants of the shared-content session can be viewing Jane's screen-share content in a smaller window or PiP (similar to screen-share window 6070 in
Because the contents 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-share pill 6021B is displayed layered beneath clock 6106 in a status bar region of John's device 6000A. In some embodiments, other information in the status bar region of John's device (the region that includes the clock and other relevant information such as a battery charge indication and signal strength indicator(s)) overlaps with corresponding regions from Jane's device. In some embodiments the home affordance 6077B from Jane's device overlaps with the home affordance 6077A on John's device. In some embodiments, content from Jane's screen is shown blurred and beneath content in John's status region. For example, representation 6021B′ is shown blurred (indicated by hatching) and beneath John's clock 6106. In some embodiments, Jane's content is shown displayed over John's content, either with or without being blurred.
In
In
In
In
In response to input 6136, John's device 6000A displays launch interface 6140 for launching playback of media content selected in the TV app interface 6130. As shown in
In
As shown in
In
When the video call with Jane is ended a few minutes later (as indicated by clock 6106), John is able to resume playback of “TV Show 3,” which has remained paused since the incoming video call was received, by selecting play affordance 6152A-4 via input 6164, as indicated in
John's device 6000A is depicted in
As shown in
In
In response to detecting input 6204 on video 6202, John's device 6000A displays notification 6206 indicating that the selected content cannot be shared with the Mountaineers. In some embodiments, John can select “okay” to continue playing the video privately on John's device—that is, the content is played on John's device without the content being played at other devices in the shared-content session (if John's device was not in the shared-content session, the device would have played the content without displaying notification 6206). In some embodiments, content that cannot be played together in the shared-content session can be shared with participants in the shared-content session by sharing John's screen while the content is playing privately on John's device. In some embodiments, notification 6208 is displayed to inform the user that the content can be displayed for others using screen-sharing. In some embodiments, notification 6208 is selectable to initiate a screen-sharing session (e.g., optionally displaying control region 6015A), in order to share the selected content. As John's device plays the selected content, John's screen (and, optionally, audio) is transmitted to the participants of the shared-content session via screen-sharing. In some embodiments, content that is shared via screen-sharing has a reduced quality (e.g., video and/or audio quality) due to the compression of the audio and/or video data to accommodate for bandwidth constraints associated with sharing the content from the host device to the participating devices. On the other hand, when media content is shared such that each respective device separately accesses the media content (e.g., from a remote server), the devices are capable of playing back the content at a greater quality because the content is not being compressed for transmission like it is for screen-share content. Example embodiments of sharing media content in this higher-quality manner are described in greater detail below.
In some embodiments, TV app interface 6130 recommends content for viewing based on subscriptions of participants of the Mountaineers group. For example, if several members of Mountaineers have a subscription to a particular content provider, content from that provider is recommended (e.g., under the “what to watch” section). In some embodiments, TV app interface 6130 recommends content that is capable of being shared in a shared-content session. For example, in
In
In
In some embodiments, when a video call or video conference session is active while content is being shared in the shared-content session, a representation of a participant of the video call is displayed concurrently with a representation of the shared content. For example, in
When content is added to the shared-content session, playback of the respective content is synchronized at the respective devices so that each device is separately outputting the content at a same playback state (e.g., playback time, playback location, playing state, and/or paused state). For example, in
In addition to starting playback of “First Episode,” John's device 6000A displays notification 6288 in response to input 6224, informing John that he started playback of “First Episode” for the Mountaineers group. In some embodiments, notification 6288 can be selected to display control region 6015A.
In response to “First Episode” being added to the shared-content session, Jane's device 6000B initiates local playback of the show using the TV app installed at her device, including displaying media PiP 6150B, starting playback of “First Episode,” and, optionally, displaying notification 6230 informing Jane that John started playing “First Episode” for the Mountaineers group. In some embodiments, when a notification (e.g., notification 6230) is displayed, the device shifts the location of the media PiP 6150 (and, optionally, other elements on the display such as the video feeds in
In some embodiments, John's device 6000A displays content playing in the interface shown in
As Jane and the rest of the Mountaineers group are separately watching “First Episode” at their respective devices, the shared-content session enables the members of the group to continue interacting with one another through various communication channels such as, for example, video conferencing, messaging, and speaking directly to each other over the audio channel associated with the shared-content session.
In
Jane's device 6000B displays control region 6015B in response to input 6234. In order to accommodate display of control region 6015B, Jane's device moves media PiP 6150B downward on the screen and further resizes and/or moves the video feeds and, optionally, camera preview 6184, as shown in
In
When content is being shared in the shared-content session, each respective participant is capable of controlling playback of the shared content at their respective device, which, in turn, controls playback of the shared content at other devices participating in the shared-content session. For example, in
As shown in
In
Jane's device 6000B dismisses control region 6015B and media PiP 6150B in response to home gesture 6268, and displays sharing pill 6020B, as shown in
In some embodiments, a PiP can be moved, resized, or otherwise manipulated. For example, in
In
In response to input 6274 on notification 6272, Jane's device displays media PiP 6150B in
In
In
In response to input 6298, John's device 6000A stops playback of “First Episode” and begins to play video 6296 from Mom, including outputting audio 6302 from video 6296. Because video 6296 is not content that is capable of being shared in the shared-content session (e.g., the video is not available to members of the Mountaineers group because it is a video sent only to John's device 6000A), John's device starts playback of video 6296 only at John's device 6000A, while other participants of the shared-content session continue to watch “First Episode,” as shown on Jane's device 6000B. John's device remains in (connected to) the shared-content session, as indicated by sharing pill 6020A. Accordingly, John's device is still able to communicate with the members of the Mountaineers group (e.g., via the audio channel and/or video conference interface). In some embodiments, John's device 6000A stops playback of shared content (optionally while remaining in the shared-content session) in response to other events such as, for example, receiving an incoming call. Because John is no longer watching content in the shared-content session, John becomes less active in the shared-content session than Ryan. Accordingly, Jane's device replaces John's video feed in mini PiP 6243 with Ryan's video feed.
When John's device 6000A begins playing video 6296, John's device displays notification 6300 indicating that the video is being played only for John and, as such, is not being shared with the Mountaineers group. Notification 6300 includes messages glyph 6304 indicating that the video is being played using the messages app.
In
As previously noted, while John is privately viewing video 6296 on John's device 6000A, John's device remains connected to the shared-content session and is capable of communicating with the members of the Mountaineers group through the shared-content session. In
In
When John's device 6000A resumes playback of the shared content in
In
In
In response to detecting input 6336 on control 6334, Jane's device 6000B begins playback of “Movie 3” for the Mountaineers group, as shown in
In
In
In
In response to input 6376, John's device begins “First Episode” for the Mountaineers group, which begins to play on John's device 6000A as indicated by media PiP 6150A and notification 6378. Because the TV app that is used to play “First Episode” is not installed at Jane's device, Jane's device does not start playing “First Episode” and, instead, displays notification 6380 informing Jane that John started playing “First Episode” in the shared-content session. Notification 6380 includes view option 6382 which is selectable via input 6384 to display control region 6015B, as shown in
When control region 6015B is displayed, Jane's device 6000B also displays prompt 6386 prompting Jane to download the TV app that is required for viewing “First Episode.” In response to input 6390 on view option 6388, Jane's device 6000B displays app store interface 6392, which is a specific location within the app store that displays an option 6394 that is selectable via input 6396 to download the TV app, as shown in
In response to input 6398, John's device begins “First Episode” for the Mountaineers group, which begins to play on John's device 6000A as indicated by media PiP 6150A and a notification in
When control region 6015B is displayed, Jane's device 6000B also displays prompt 6406 prompting Jane to purchase the subscription that is required for viewing “First Episode.” In response to input 6410 on purchase option 6408, Jane's device 6000B displays subscription interface 6412, which includes an option 6414 that is selectable via input 6416 to purchase the subscription, as shown in
Jane taps notification 6436 via input 6438 to display music interface 6434B, as shown in
In
In
In
In
In
In
In
Controller interface 6506 includes control pad 6508 and control options 6510 for controlling playback of content at TV 6500. Control pad 6508 can be interacted with (e.g., via touch inputs) to provide input for controlling display of content at TV 6500. For example, control pad 6508 can be used to navigate a cursor, select menu options, control playback of content, or provide other inputs for controlling content displayed at TV 6500. For example, in
In some embodiments, a device 6000 can switch between multiple different shared-content sessions that are active simultaneously.
In
John switches from the active shared-content session with the Mountaineers group to the active shared-content session with the Fishermen group via input 6536 on item 6522. In response to detecting input 6536, John's device switches from the shared-content session with the Mountaineers group to the shared-content session with the Fishermen group, as shown in
In
In
In response to input 6566, Jane's device 6000B displays weather interface 6572 while continuing to display media PiP 6150B. Although Jane spoke to the Mountaineers group, Jane's activity is not activity of a remove participant with respect to Jane's device 6000B. Accordingly, Ryan remains the most active remote participant with respect to Jane's device 6000B. Therefore, Jane's device 6000B continues to display indication 6558 of Ryan with media PiP 6150B.
In some embodiments, the indication of an active remote participant is displayed during screen sharing. For example,
In
In some embodiments, a user's view of shared content can be resized, adjusted, zoomed in, zoomed out, or otherwise manipulated. For example, in
As mentioned above, in some embodiments, sharing option 6015-8 is selectable to display and, optionally, change a media playback setting associated with a respective application. An example of such an embodiment is depicted in
In
In
In
In some embodiments, when all participants have disabled their respective video feeds, device 6000 stops displaying a respective video PiP or mini PiP and displays a notification when the last video feed is disabled. For example, in
In
In
In some embodiments, tiles are generally displayed in primary region 6170-1, but can be displayed in roster region 6170-2 based on various criteria such as, for example, when there is not sufficient space for the respective tile(s) to be displayed in primary region 6170-1. In some embodiments, tiles are associated with a priority level for display, and tiles having a higher priority are displayed in the primary region, with the remaining tiles (or a subset of the remaining tiles) displayed in the roster region. In some embodiments, tiles having a higher priority are those that display a video feed of a more active (or more recently active) participant, tiles that are associated with participants who are sharing content or have recently shared content, participants who joined the video conference earlier in the call session, or tiles that have been selected (e.g., pinned) for display in the primary region. In some embodiments, a tile with a higher priority can be displayed in the roster region if there is not sufficient space to display the tile in the primary region. In some embodiments, tiles are moved from the primary region to the roster region (or vice versa) as the priority of those participants changes or as other conditions dictate. In some embodiments, not all tiles may be visible in the roster region. In such cases, the roster can be scrolled (e.g., via a swipe gesture on the roster region) to display additional tiles assigned to the roster region. In some embodiments, the videos feeds in the roster can be updated less frequently or at a slower rate than video feeds that are not in the roster (e.g., video feeds in primary region 6170-1).
John's device 6000A illustrates an embodiment where a grid view setting is disabled, and Jane's device 6000B illustrates an embodiment where the grid view setting is enabled. When the grid view setting is disabled, device 6000 displays video tiles in an overlapping or non-grid display arrangement, as shown by tiles 6642-1 and 6642-2 on John's device 6000A. When the grid view setting is enabled, device 6000 displays video tiles in a grid arrangement, as shown by tiles 6644-1 to 6644-4 on Jane's device 6000B.
In
When playback resumes, John's device 6000A displays notification 6650 indicating that Jane resumed First Episode for the Mountaineers group. In some embodiments, notifications associated with the shared-content session (e.g., notifications generated by an application that enables the shared-content session) are displayed having a respective color scheme, regardless of which color scheme is being used by a respective device. Accordingly, notification 6650 is displayed having a shaded color associated with the shared-content session, even though John's device is using a light color scheme. Similarly, Jane's device 6000B displays notification 6652 indicating that Jane resumed First Episode for the Mountaineers group. Notification 6652 is displayed having the shaded color associated with the shared-content session.
In
In
In response to inputs 6662 and 6664, devices 6000 expand media PiPs 6150 and rearrange the tiles displayed in video conference interfaces 6170A and 6170B in response to the expanded state of the media PiPs, as shown in
In some embodiments, device 6000 moves camera preview 6645 and/or tiles in roster region 6170-2 to accommodate the placement of media PiP 6150. In some embodiments, device 6000 does not move camera preview 6645 and/or tiles in roster region 6170-2 to accommodate the placement of media PiP 6150. For example, in
Referring again to
In
Shared-content session settings interface 6708 also includes application options 6712, which include toggles 6714-1 to 6714-7 that are selectable to control whether content associated with a respective application is automatically added to a shared-content session. In some embodiments, the respective applications include applications that are capable of streaming content (e.g., media content, music, videos, and/or video games). When a respective one of toggles 6714-1 to 6714-7 is enabled, shareable content accessed from the corresponding application is automatically added to a shared-content session. When a respective one of toggles 6714-1 to 6714-7 is disabled, shareable content accessed from the corresponding application is not automatically added to the shared-content session and, instead, the user is given an option to add the content to a shared-content session or to play the content without adding the content to the shared-content session (e.g., similar to prompt 6220 in
In some embodiments, settings for shared-content sessions are maintained for a corresponding application when the shared content is transitioned to a different device (e.g., TV 6500). For example, if TV application toggle 6714-3 is on, as shown in
As described below, method 700 provides an intuitive way for outputting content and/or notifications associated with at shared-content session. The method reduces the cognitive burden on a user for outputting content and/or notifications associated with at shared-content session, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to outputting content and/or notifications associated with at shared-content session faster and more efficiently conserves power and increases the time between battery charges.
The computer system (e.g., 6000A and/or 6000B) detects (702), via the one or more input devices (e.g., 60001A and/or 60001B), a first set of one or more inputs (e.g., 6064, 6190, 6218, or 6224) corresponding to a request to output content (e.g., a request to view images, text, video content, audio (e.g., music) content, and/or the like) (e.g., a selection of a “play” affordance; a selection of an image; an input on an application icon (e.g., to launch or open the application); and/or a selection of a URL).
In response to detecting (704) the first set of one or more inputs corresponding to a request to output the content, in accordance with a determination (706) that there is an active shared-content session between the computer system (e.g., 6000A) and an external computer system (e.g., 6000B) (e.g., one or more external computer systems) (e.g., a computer system that is associated with (e.g., being operated by) a remote user (e.g., a user that is in a shared-content session with the user of the computer system)), wherein the shared-content session, when active, enables the computer system to output respective content (e.g., synchronized content (e.g., audio and/or video data for which output is synchronized at the computer system and the external computer system) and/or screen-share content (e.g., image data generated by a device (e.g., the computer system; the external computer system) that provides a real-time representation of an image or video content that is currently displayed at the device)) while the respective content is being output by the external computer system: the computer system (e.g., 6000A) outputs (708), via an output generation component of the one or more output generation components, a first notification (e.g., 6066, 6210, 6220, 6228) (e.g., a graphical notification (e.g., a banner), and/or an and audible notification (e.g., an alert) (optionally including, a haptic output and/or an audio output)) that includes an indication (e.g., text, a graphical indication, an audible indication) that the content will be output by the external computer system when the content is output by the computer system (e.g., the content will be output at the external computer system while the content is output at the computer system); and the computer system (e.g., 6000A) outputs (710) the content (e.g., 6150A) (at the computer system) via an output generation component of the one or more output generation components (e.g., displaying video/image data of the content on a display component of the computer system and/or outputting (e.g., playing) audio data of the content at a speaker component of the computer system). Outputting the first notification that includes an indication that the content will be output by the external computer system when the content is output by the computer system provides feedback to a user of the computer system that the selected content will be output by the external computer system when the content is output by the computer system. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, during the shared-content session, the respective content is concurrently output at both the computer system and the external computer system. In some embodiments, the respective content is screen-share content from the computer system (e.g., content displayed on the display of the computer system) that is transmitted to the external computer system so that both computer systems are concurrently outputting the screen-share content from the computer system. In some embodiments, the respective content is screen-share content from the external computer system (e.g., content displayed on the display of the external computer system) that is transmitted to the computer system so that both computer systems are concurrently outputting the screen-share content from the external computer system. In some embodiments, the respective content is synchronized content that is output at the computer system and the external computer system. In some embodiments, the computer system and the external computer system each separately access the respective content (e.g., a video; a movie; a TV show; a song) from a remote server and are synchronized in their respective output of the respective content such that the content is output (e.g., via an application local to the respective computer system) at both computer systems while each computer system separately accesses the respective content from the remote server(s). In some embodiments, the computer system and external computer system separately access the respective content (e.g., synchronized content) in response to a selection that is received at the computer system or at the external computer system for requesting output of the respective content.
In some embodiments, in response to detecting the first set of one or more inputs corresponding to a request to output the content: in accordance with the determination that there is an active shared-content session between the computer system (e.g., 6000A) and the external computer system (e.g., 6000B): the computer system (e.g., 6000A) provides (e.g., transmitting), to the external computer system, content information that enables the external computer system to output the content (e.g.,
In some embodiments, in response to detecting the first set of one or more inputs (e.g., 6148) corresponding to a request to output the content: in accordance with a determination that there is not an active shared-content session between the computer system and an external computer system (e.g., 6000B): the computer system outputs the content via the output generation component of the one or more output generation components (e.g., 6001A) without outputting the first notification (e.g.,
In some embodiments, while outputting the content via the output generation component of the one or more output generation components (e.g., 6001A): in accordance with a determination that there is an active shared-content session between the computer system (e.g., 6000A) and the external computer system (e.g., 6000B), the computer system synchronizes output (e.g., playback) of the content via the output generation component of the one or more output generation components (e.g., 6001A) with output of the content at the external computer system (e.g.,
In some embodiments, outputting the content via an output generation component of the one or more output generation components (e.g., 6001A) includes outputting (e.g., displaying) a user interface (e.g., 6150A) of an application of the computer system (e.g., 6000A) that outputs the content, the method further comprising: while there is an active shared-content session between the computer system and the external computer system (e.g., 6000B), the computer system (e.g., 6000A) outputs the content via an output generation component of the one or more output generation components (e.g., 6001A) without providing, to the external computer system, information that enables the external computer system to output the user interface of the application of the computer system that outputs the content (e.g.,
In some embodiments, before detecting the first set of one or more inputs corresponding to a request to output content: the computer system (e.g., 6000A) displays, via an output generation component of the one or more output generation components (e.g., 6001A), a user interface of a media player application that includes a selectable play element (e.g., 6144) (e.g., an affordance, a button) that, when selected, initiates output of the content, including: in accordance with a determination that there is an active shared-content session between the computer system and an external computer system (e.g., 6000B), the computer system (e.g., 6000A) displays the selectable play element with a first appearance (e.g., 6144 in
In some embodiments, before detecting the first set of one or more inputs corresponding to a request to output content: the computer system (e.g., 6000A) displays, via an output generation component of the one or more output generation components (e.g., 6001A), a user interface (e.g., 6130) of a media player application that includes a representation (e.g., 6138) of the content (e.g., an image and/or text representing a movie, episode, song, and/or podcast that can be played; a description of the content; rating and/or review information of the content; a 4K icon (e.g., badge) that is visually associated with (e.g., displayed on or adjacent to) the content; a DOLBY vision icon (e.g., badge) that is visually associated with the content), including: in accordance with a determination that the content can be (e.g., is capable of being; is configured to be) output by the external computer system (e.g., 6000B) when the content is output by the computer system (e.g., as part of an active shared-content session between the computer system and an external computer system; the content can be added to the shared-content session) (and, optionally, in accordance with a determination that there is an active shared-content session between the computer system and an external computer system), the computer system (e.g., 6000A) concurrently displays an identifier (e.g., 6132) (e.g., an icon, text, and/or badge) with the representation of the content; and in accordance with a determination that the content cannot be (e.g., is not capable of being; is not configured to be) output by the external computer system when the content is output by the computer system (e.g., as part of an active shared-content session between the computer system and the external computer system; the respective content cannot be added to the shared-content session), the computer system (e.g., 6000A) displays the representation of the content without outputting the identifier (e.g.,
In some embodiments, while outputting the first notification (e.g., 6228 and/or 6248) that includes the indication that the content will be output by the external computer system (e.g., 6000B) when the content is output by the computer system, the computer system detects an input (e.g., 6252) selecting the first notification (e.g., a touch gesture (e.g., a tap, a press and hold) on the first notification; a selection input (e.g., button press) while the first notification is in focus; a voice command to select the first notification). In response to detecting the input selecting the first notification, the computer system (e.g., 6000A) displays a shared-content session object (e.g., 6015A, 6015B) that includes information (e.g., 6015A-1, 6015A-2, and/or 6015A-3) associated with the active shared-content session between the computer system and the external computer system (e.g., a representation (e.g., name, avatar) of participants in the shared-content session; a representation of a group of users associated with the shared-content session; a number of participants in the shared-content session; content in the shared-content session). Displaying a shared-content session object that includes information associated with the active shared-content session between the computer system and the external computer system in response to detecting the input selecting the first notification provides additional controls for controlling aspects of the content-sharing session without cluttering the user interface with additional displayed controls until an input is needed and avoids accidental inputs while the additional controls are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the shared-content session object includes one or more selectable options for controlling operations, parameters, and/or settings of the active shared-content session.
In some embodiments, the shared-content session object (e.g., 6015A or 6015B) includes one or more of: a selectable option for controlling an audio (e.g., microphone) setting of the active shared-content session (e.g., 6015A-6) (e.g., an audio on/off option), a selectable option for controlling a video (e.g., camera) setting of the active shared-content session (e.g., 6015A-7) (e.g., a video on/off option), or a selectable option for controlling a content-sharing (e.g., screen sharing) setting of the active shared-content session (e.g., 6015A-8) (e.g., a content-sharing on/off option). In some embodiments, the shared-content session object includes a messages affordance, a speaker affordance, an option to leave the active shared-content session, and/or an option to view (additional) information about the shared-content session (e.g., a group card), such as, e.g., users, user status, and/or content associated with the shared-content session.
In some embodiments, displaying the shared-content session object (e.g., 6015A or 6015B) includes displaying a sharing indicator (e.g., 6015A-8 or 6015B-8) (e.g., a selectable option for controlling a content-sharing (e.g., screen sharing) setting of the active shared-content session (e.g., a content-sharing on/off option), including: in accordance with a determination that the computer system (e.g., 6000A) is in a first sharing state with respect to the active shared-content session (e.g., a screen-sharing state), the computer system (e.g., 6000A) displays the sharing indicator with a first visual state (e.g., 6015B-8 in
In some embodiments, the first sharing state and the second sharing state are respective screen-sharing states (e.g., the first sharing state and the second sharing state indicate a screen-sharing state of the computer system (e.g., 6000A) with respect to the shared-content session (e.g., whether or not a screen of the computer system is in or being shared with the shared-content session)). In some embodiments, the state (e.g., appearance) of the sharing indicator does not depend on a state of other types of content sharing (e.g., the sharing indicator has the same appearance when the computer system is sharing content other than a screen of the computer system as when the computer system is not sharing content).
In some embodiments, after displaying the shared-content session object (e.g., 6015A or 6015B) in response to detecting the input selecting the first notification: in response to detecting that display of the shared-content session object satisfies a set of one or more shared-content session object display criteria (e.g., the shared-content session object has been output for a predetermined amount of time (e.g., 1 second, 3 seconds, 5 seconds, 10 seconds)), the computer system (e.g., 6000A) ceases display of the shared-content session object. Ceasing display of the shared-content session object in response to detecting that display of the shared-content session object satisfies a set of one or more shared-content session object display criteria reduces computations performed by the computer system for displaying controls associated with the shared-content session object and avoids accidental inputs while the additional controls are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, while outputting the content via an output generation component of the one or more output generation components (e.g., 6001A), the computer system (e.g., 6000A) displays, concurrently with the shared-content session object (e.g., 6015A or 6015B), selectable content controls (e.g., 6152A, 6152A-1, 6152A-2, 6152A-3, and/or 6152A-4) (e.g., video controls; controls provided by an application that outputs the content; a video chrome) for controlling output of the content (e.g., controls that are distinct from controls in the shared-content session object). The computer system (e.g., 6000A) ceases display of (e.g., hiding, minimizing) the shared-content session object (e.g., 6015A or 6015B) without ceasing (e.g., while maintaining) display of the selectable content controls (e.g., 6152A) (e.g., the shared-content session object is hidden before the selectable application control are hidden). Ceasing display of the shared-content session object without ceasing display of the selectable content controls provides additional controls for controlling aspects of the content without cluttering the user interface with additional displayed controls that are not needed for controlling the content and avoids accidental inputs while the additional controls are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000A) displays selectable content controls (e.g., 6152A) (e.g., video controls; controls provided by an application that outputs the content; a video chrome) for controlling output of the content (e.g., controls that are distinct from controls in the shared-content session object) and then ceases display of the selectable content controls (e.g.,
In some embodiments, in accordance with a determination that there is an active shared-content session between the computer system (e.g., 6000A) and an external computer system (e.g., 6000B), and that the active shared-content session includes video content (e.g., video content is being shared between the computer system and the external computer system in the active shared-content session), the computer system (e.g., 6000A) displays an indication (e.g., 6228) (e.g., a banner, a notification) that the video content is in the shared-content session (e.g., that the video content is being output by the external computer system as part of the shared-content session) without displaying one or more selectable video control objects for controlling the video content (e.g., 6000A in
In some embodiments, the first set of one or more inputs corresponds to a request to output content includes selection of a play object (e.g., 6144, 6220-1, 6446) (e.g., a play button, an icon, an affordance) in a media application. In some embodiments, the first set of one or more inputs includes a touch gesture (e.g., a tap) on the play object in the media application or a selection input (e.g., a mouse click, a press of a button on a remote) while the play object is in focus (e.g., the play object is designated or a cursor is over the play object).
In some embodiments, the computer system (e.g., 6000A) detects an indication that a request (e.g., 6246, 6264, 6350, 6362, or 6364) to cease output of the content has occurred (e.g., a request (e.g., a user input) at the computer system; data indicating that a user of the external computer system (e.g., 6000B) has requested to cease output of the content). In response to detecting the indication that a request to cease output of the content has occurred, the computer system (e.g., 6000A) displays, via an output generation component of the one or more output generation components (e.g., 6001A), a second notification (e.g., 6248, 6250, 6368, or 6370) that includes an indication that output of the content has ceased. Displaying a second notification that includes an indication that output of the content has ceased in response to detecting the indication that a request to cease output of the content has occurred provides feedback to a user of the computer system about the playback state of the content. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, an indication that output of the content has ceased is displayed for all participants and/or computer systems connected to the active shared-content session.
In some embodiments, the computer system (e.g., 6000A) detects an input (e.g., 6194 or 6204) corresponding to a request to open (e.g., launch, bring to the foreground) an application. In response to detecting the input corresponding to a request to open the application: in accordance with a determination that the application is not capable of sharing content in the shared-content session between the computer system and the external computer system (e.g., 6000B) (e.g., the application does not support synchronized content in the shared-content session), the computer system (e.g., 6000A) outputs, via an output generation component of the one or more output generation components (e.g., 6001A), a third notification (e.g., 6206 or 6208) that includes an indication that a user interface of the application, as output by the computer system, will be output by the external computer system (e.g., the computer system will provide a notification that the application will be added to the shared-content session via screen sharing). Outputting a third notification that includes an indication that a user interface of the application, as output by the computer system, will be output by the external computer system in accordance with a determination that the application is not capable of sharing content in the shared-content session between the computer system and the external computer system provides feedback to a user of the computer system that the user interface of the computer system will be output by the external computer system. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, if an application does not have content sharing capabilities, the computer system displays a notification that a screen of the computer system will be shared (e.g., the application (or the content therein) will be included in the shared-content session by sharing the screen of the computer system in the shared-content session (e.g., as opposed to synchronized sharing of the content)).
In some embodiments, while the shared-content session between the computer system (e.g., 6000B) and the external computer system (e.g., 6000A) is active, wherein the shared-content session was initiated via the external computer system: after the external computer system disconnects from (e.g., leaves) the shared-content session (e.g., in response to input 6372 in
In some embodiments, while the shared-content session between the computer system (e.g., 6000A or 6000B) and the external computer system (e.g., 6000B or 6000A) is active: the computer system outputs second content (e.g., screen-share content of 6000B in
In some embodiments, while outputting third content (e.g., 6150A in
In some embodiments, after detecting the first event and ceasing output of the third content, the computer system (e.g., 6000A) detects an input (e.g., 6164 or 6318) corresponding to a request to output (e.g., resume playback of) the third content. In response to detecting the input corresponding to a request to output (e.g., resume output of) the third content: in accordance with a determination that the shared-content session between the computer system and the external computer system (e.g., 6000B) has remained active since detecting the first event, the computer system (e.g., 6000A) outputs the third content based on an elapsed time from when the first event was detected (e.g.,
In some embodiments, while outputting fourth content (e.g., 6150A in
In some embodiments, the computer system (e.g., 6000A) displays (e.g., in an upper corner of a display) a shared-content session indicator (e.g., 6020A in
In some embodiments, the computer system (e.g., 6000) receives (e.g., detects) an indication of a third event (e.g., an event that meets criteria for outputting a notification); and in response to receiving the indication of the third event, displays a notification of the third event, including: in accordance with a determination that the notification of the third event (or the third event itself) is associated with the shared-content session, the notification of the third event includes a first color (e.g., notification 6650 and/or notification 6652) (and, optionally, not a second color); and in accordance with a determination that the notification of the third event (or the third event itself) is not associated with the shared-content session (e.g., notification 6658), the notification of the third event includes a second color (and, optionally, not the first color), wherein the second color is different from the first color. Selectively displaying the notification of the third event with a first color or a different second color depending on whether the notification is associated with the shared-content session automatically, quickly, and efficiently indicates to the user the context of the notification with respect to the shared-content session, which performs an operation when a set of conditions has been met without requiring further user input and provides improved visual feedback to the user. In some embodiments, the first color and the second color are alternative background colors of the notification of the third event.
In some embodiments, the computer system (e.g., 6000) receives (e.g., detects) an indication of a fourth event (e.g., an event that meets criteria for outputting a notification); and in response to receiving the indication of the fourth event, displays a notification of the fourth event, including: in accordance with a determination that the notification of the fourth event (or the fourth event itself) is associated with the content-sharing session and the computer system is in a first display mode (e.g., a light display mode and/or a daytime display mode), the notification (e.g., notification 6650) includes a third color (and, optionally, not a fourth color); and in accordance with a determination that the notification of the fourth event (or the fourth event) is not associated with the content-sharing session and the computer system is in the first display mode, the notification (e.g., notification 6658) of the fourth event includes a fourth color (and, optionally, not the third color), wherein the fourth color is different from the third color. Selectively displaying the notification of the fourth event with a third color or a different fourth color based on the computer system being in a first display mode and depending on whether the notification is associated with the shared-content session automatically, quickly, and efficiently indicates to the user the context of the notification with respect to the shared-content session, which performs an operation when a set of conditions has been met without requiring further user input and provides improved visual feedback to the user. In some embodiments, a display mode of the computer system determines a common appearance or scheme for displaying user interfaces and/or user interface objects. In some embodiments, the third color and the fourth color are alternative background colors of the notification of the fourth event.
In some embodiments, displaying the notification of the fourth event includes: in accordance with a determination that the notification of the fourth event (or the fourth event itself) is not associated with the content-sharing session and the computer system is in a second display mode (e.g., a dark display mode and/or a nighttime display mode) that is different from the first display mode, the notification of the fourth event (e.g., notification 6660) includes the third color (and, optionally, not the fourth color). Selectively displaying the notification of the fourth event with the third color or the fourth color depending on the display mode of the computer system automatically, quickly, and efficiently indicates to the user the context of the notification with respect to the display mode of the computer system, which performs an operation when a set of conditions has been met without requiring further user input and provides improved visual feedback to the user. In some embodiments, in accordance with a determination that the notification of the fourth event (or the fourth event itself) is associated with the content-sharing session and the computer system is in the second display mode, the notification of the fourth event includes the third color. In some embodiments, notifications associated with the content-sharing session always include the third color (e.g., regardless of the display mode). In some embodiments, the first display mode and/or the second display mode are set based on a time of day or set based on user activation of a mode control setting.
Note that details of the processes described above with respect to method 700 (e.g.,
As described below, method 800 provides an intuitive way for outputting a notification associated with shared-content session. The method reduces the cognitive burden on a user for participating in a shared-content session, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to participate in a shared-content session faster and more efficiently conserves power and increases the time between battery charges.
While displaying (802), via an output generation component of the one or more output generation components, a first user interface (e.g., 6004A, 6004B, 6018, 6088, 6170A, 6170B, 6434, 6466, or 6468) (e.g., a system user interface (e.g., a “home” screen); a user interface for a first application operating at the computer system (e.g., a web browser application; and/or a music application)) while a shared-content session between the computer system and an external computer system (e.g., that is being operated by a first user (e.g., a user that is in a shared-content session with the user of the computer system)) (e.g., one or more external computer systems each associated with a user (e.g., user account)) is active (e.g., the computer system is enabled to output respective content (e.g., audio and/or video) while the respective content is being output (e.g., concurrently) by the external computer system), the computer system receives (804) an indication (e.g., data) that first content (e.g., synchronized content and/or screen-share content) has been selected (e.g., 6064, 6224, 6376, 6398, 6432, 6444, or 6470) for the shared-content session at the external computer system (e.g., the selection was made at the external computer system), wherein the first content is associated with a first application (e.g., represented by 6128, 6130, 6434A, or 6434B) on the computer system (e.g., a web browser application; a music application; a movie application; and/or a video application).
In response to receiving the indication that the first content has been selected (e.g., 6064, 6224, 6376, 6398, 6432, 6444, or 6470) for the shared-content session, the computer system outputs (806), via an output generation component of the one or more output generation components, a first notification (e.g., 6072, 6230, 6380, 6400, 6436, or 6450) (e.g., a notification indicating that content sharing has started; and/or a banner or an alert (optionally including, a haptic output and/or an audio output) (in some embodiments, the notification is selectable to display information associated with the shared-content session and/or one or more selectable shared-content session function options that, when selected, cause the computer system to perform a respective function associated with the shared-content session) generated by a second application (e.g., an application for enabling the shared-content session; a system-level application at the computer system) that is different from the first application that is associated with the first content. Outputting a first notification generated by a second application that is different from the first application that is associated that is associated with the first content, in response to receiving the indication that the first content has been selected for the shared-content session, provides feedback to a user of the computer system that the first content has been selected for the shared-content session, provides additional controls for controlling aspects of the shared-content session without cluttering the user interface with additional displayed controls until an input is detected, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
After outputting the first notification and while the shared-content session between the computer system and the external computer system is active, the computer system outputs (808), via an output generation component of the one or more output generation components, the first content (e.g., 6070, 6150A, or 6150B) using the first application that is associated with the first content (e.g., displaying image data of the first content and/or outputting audio data of the first content at the computer system using the first application).
In some embodiments, the first user interface is a system user interface (e.g., 6018 or 6088) (e.g., user interface 400; a home screen; a user interface that is provided and/or controlled by an operating system of the computer system; and/or a displayed user interface that includes user interface objects corresponding to respective applications, and when a user interface object is activated, the computer system displays the respective application corresponding to the activated user interface object).
In some embodiments, the first user interface is a user interface (e.g., 6004A, 6004B, 6170A, or 6170B) of a third application that is different from the first application that is associated with the first content (and, optionally, different from the second application that generates the first notification). In some embodiments, the computer system outputs the first content in a new application interface (e.g., a new window; a picture-in-picture window) (e.g., by opening a new window or launching an application) other than the first user interface that is already displayed.
In some embodiments, outputting the first content using the first application that is associated with the first content includes displaying the first content in a second user interface (e.g., 6070, 6150A, or 6150B) (e.g., an application window, a picture-in-picture (PiP) window, a video application interface, a web browser interface, a music application interface, and/or a user interface that is different from the first user interface (e.g., the first user interface is a home screen or a first application window, and the second user interface is a window (e.g., a PiP window) including the first content that is separate from the first application window and/or is overlaid on the home screen or a window of another application)). In some embodiments, the first notification (e.g., 6072, 6230, 6380, 6400, 6436, or 6450) generated by the second application includes a representation (e.g., “First Episode” or “Movie 3”) of the first content that is displayed in the second user interface (e.g., text describing the first content; an image, icon, thumbnail, and/or other graphical representation of the first content (e.g., a representative image of a video and/or an album cover)). Outputting the first notification including a representation of the first content that is displayed in the second user interface provides feedback to a user of the computer system by providing a preview of the first content, and reduces inputs at the computer system by providing a preview of the first content without requiring the user to navigate to the second user interface to view the first content. Providing improved feedback and reducing input at the computer system enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the first notification is displayed without displaying the representation of the first content. For example, the notification informs a user of the computer system that content (e.g., the first content) has been added to the shared-content session, without displaying the content that was added to the shared-content session.
In some embodiments, while displaying the first content in the second user interface, the computer system displays a third user interface (e.g., 6004A, 6004B, 6018, 6088, 6170A, 6170B, 6434, 6466, or 6468) (e.g., an application window) that is different from the first user interface and the second user interface, wherein the second user interface is at least partially behind (e.g., covered by; overlapped by) the third user interface. Displaying the third user interface while displaying the first content in the second user interface, wherein the second user interface is at least partially behind the third user interface provides feedback to a user of the computer system by providing a preview of the first content without interrupting the user's view of the third user interface, and reduces inputs at the computer system by providing a preview of the first content while continuing to view the third content without requiring the user to navigate to the second user interface to view the first content and without requiring the user to navigate away from the first content to view the third user interface. Providing improved feedback and reducing input at the computer system enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system displays, in the second user interface, a first indication (e.g., 6100 or 6230) (e.g., a name, initial(s), video representation, and/or an avatar) of a participant of the shared-content session that selected the first content for the shared-content session. Displaying, in the second user interface, the first indication of a participant of the shared-content session that selected the first content for the shared-content session provides feedback to a user of the computer system informing the user who selected the first content for the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system detects a first input (e.g., 6092) directed to the second user interface (e.g., a user input directed to a location corresponding to the second user interface; a tap on, click on, hover over, and/or gaze at the second user interface). In some embodiments, displaying the first indication (e.g., 6100-1) of the participant of the shared-content session that selected the first content for the shared-content session in the second user interface occurs in response to detecting the first input directed to the second user interface (e.g., a user can tap, click on, hover over, and/or gaze at the second user interface to display (or, optionally, hide) the indication of the participant that added the first content to the shared-content session). In some embodiments, if the first indication is displayed in the second user interface, the computer system ceases to display (e.g., hides) the first indication in response to detecting an input directed to the second user interface.
In some embodiments, while displaying the first content in the second user interface, and while the second user interface occupies a first amount of available display area (e.g., a predetermined amount of a display area), the computer system detects a second input (e.g., 6092, 6104, or 6242) directed to the second user interface (e.g., selection of an expand-window option (e.g., icon, affordance, and/or button) or a full-screen option). In some embodiments, in response to detecting the second input directed to the second user interface, the computer system initiates a process to display the first content in an expanded display mode (e.g., 6000A in
In some embodiments, when content is displayed in an expanded display mode (e.g., a full-screen mode), the content itself does not occupy the entire display or screen. For example, in the expanded display mode, the content can be displayed in a user interface that occupies an entire display or screen, where the user interface includes the content as well as other features such as, e.g., controls, a dock, and/or borders.
In some embodiments, the process to display the first content in an expanded display mode includes displaying (e.g., in the second user interface; overlaid on the first content) a selectable expand option (e.g., 6100-2) (e.g., icon, button, and/or affordance) without displaying the first content in the expanded display mode (e.g., while maintaining a current size of the second user interface; while continuing to display the second user interface at a size that occupies less than a full screen). In some embodiments, the process to display the first content in an expanded display mode includes detecting an input (e.g., 6104) corresponding to selection of the expand option. In some embodiments, the process to display the first content in an expanded display mode includes, in response to detecting the input corresponding to selection of the expand option, displaying the first content in the expanded display mode (e.g., 6000A in
In some embodiments, while displaying the first content in the expanded display mode (e.g., 6000A in
In some embodiments, while displaying the first content in the expanded display mode, the computer system displays (e.g., in an upper corner of a display) a first shared-content session indicator (e.g., 6020A, 6020B, or 6021B) (e.g., an icon, an affordance, and/or a persistent graphical representation) that indicates that the computer system is connected to the shared-content session. Displaying a first shared-content session indicator while displaying the first content in the expanded display mode provides feedback to a user of the computer system indicating that the computer system is connected to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the first shared-content session indicator is displayed prior to displaying the first content in the expanded display mode and remains displayed while the first content is displayed in the expanded display mode or as the computer system transitions to displaying the first content in the expanded display mode. In some embodiments, the first shared-content session indicator can be selected to display a shared-content session object that includes information associated with the shared-content session and/or one or more selectable shared-content session function options that, when selected, cause the computer system to perform a respective function associated with the shared-content session.
In some embodiments, while displaying the first content in the expanded display mode, the computer system displays a selectable reduce size option (e.g., 6100-3) that, when selected, causes the first content to cease being displayed in the expanded display mode (e.g., and, optionally, to display the first content in a window that occupies less than the expanded size (e.g., a full screen)). Displaying a selectable reduce size option while displaying the first content in the expanded display mode provides feedback to a user of the computer system that the computer system is displaying the first-content from the shared-content session, provides additional controls for causing the first content to cease being displayed in the expanded display mode without cluttering the user interface with additional displayed controls until an input is detected, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the reduce size option is selectively displayed or hidden in response to detecting input. For example, the reduce size option can be displayed in response to detecting an input on a window displaying the first content, a cursor hovering over the first content, and/or a gaze directed to the first content. For example, the reduce size option can cease being displayed (e.g., hidden) in response to detecting an input on a window displaying the first content and/or a cursor and/or gaze being moved away from the first content (e.g., from over or directed to the first content to not over or not directed to the first content).
In some embodiments, the computer system displays (e.g., while displaying the first content in expanded display mode) an indication (e.g., 6077A or 6077B) (e.g., an icon, button, and/or or affordance) of a location at which the computer system is responsive to a respective input gesture (e.g., 6256) (e.g., a home gesture; a swipe gesture) to display a system user interface (e.g., 6018 or 6088) (e.g., user interface 400; a home screen; a user interface that is provided and/or controlled by an operating system of the computer system; and/or a displayed user interface that includes user interface objects corresponding to respective applications, and when a user interface object is activated, the computer system displays the respective application corresponding to the activated user interface object). Displaying an indication of a location at which the computer system is responsive to a respective input gesture to display a system user interface provides feedback to a user of the computer system that the computer system of a location on an input device that is configured to receive an input for displaying a system user interface. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, while displaying the first content (e.g., in the expanded display mode), the computer system displays one or more graphical user-interface objects (e.g., 6106, 6077A, 6077B, or 6118) (e.g., a status bar that includes, for example, a battery level indicator, a privacy indicator, and/or a signal strength indicator; and/or a selectable home option) of the first user interface, including displaying a portion (e.g., 6021B′) of the first content that overlaps the one or more graphical user-interface objects of the first user interface (e.g., displaying a portion of the first content that is underneath the one or more graphical user-interface objects with a reduced resolution and/or visibility (e.g., compared to a portion of the first content that does not overlap the one or more graphical user interface objects). Displaying a portion of the first content that overlaps the one or more graphical user-interface objects of the first user interface while displaying the first content provides feedback to a user of the computer system that the computer system is displaying the first content from the shared-content session, while still displaying the one or more graphical user-interface objects of the first user interface. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, portion(s) of the first content that are displayed underneath the one or more graphical user-interface objects of the first user interface are blurred, faded, and/or de-emphasized in order to emphasize the one or more graphical user-interface objects of the first user interface and to indicate that the one or more graphical user-interface objects of the first user interface are not part of the first content (e.g., the shared content).
In some embodiments, while displaying the first content in the expanded display mode, the computer system displays one or more shared-content session indicators (e.g., 6015A, 6015B, 6020A, or 6020B) that include information about the shared-content session (e.g., a first indication (e.g., a name, initial(s), video representation, and/or an avatar) of a participant of the shared-content session that selected the first content for the shared-content session and/or a graphical indicator (e.g., an icon, button, and/or affordance) that indicates that the computer system is connected to a shared-content session (e.g., that is only displayed when the computer system is connected to an active shared-content session)). In some embodiments, while displaying the first content in the expanded display mode, in accordance with a determination that timeout criteria are met (e.g., a predetermined time has passed since the computer system began displaying the first content in the expanded display mode), the computer system ceases display of the one or more shared-content session indicators. Ceasing display of the one or more shared-content session indicators in accordance with a determination that timeout criteria are met reduces inputs at the computer system by automatically ceasing display of the one or more shared-content session indicators without requiring additional user input. Reducing inputs at the computer system enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, while displaying the first content in the expanded display mode (e.g., while the first user interface is hidden), the computer system displays a privacy indicator (e.g., 6118) that is displayed when (e.g., displayed only when) the computer system is recording media (e.g., via a camera and/or microphone) that is being added to (e.g., shared with) the shared-content session. Displaying a privacy indicator when the computer system is recording media that is being added to the shared-content session provides feedback to a user of the computer system that a media recording device is active. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system displays the privacy indicator in accordance with a determination that the computer system is recording media that is, optionally, being added to the shared-content session (and, optionally, that the first content is being displayed in the expanded display mode). In some embodiments, the privacy indicator remains displayed when all other elements of the first user interface of the computer system are hidden (e.g., by the first content being displayed in the expanded display mode). In some embodiments, the computer system continues to display the privacy indicator for a predetermined amount of time after a media recording device (e.g., camera and/or microphone) has turned off or becomes inactive. In some embodiments, the computer system displays the privacy indicator when the first content is not in the expanded display mode.
In some embodiments, while displaying the first content in the expanded display mode, the computer system detects an input (e.g., 6256) (e.g., an activation of a “home” button, a swipe up gesture, and/or a swipe up gesture that begins at a bottom edge of a display) corresponding to a request to display a system user interface (e.g., 6018 or 6088) of the computer system (e.g., a home screen). In some embodiments, in response to detecting the input corresponding to a request to display the system user interface of the computer system, the computer system ceases display of the first content in the expanded display mode and displays the first content in the second user interface in a state that occupies less than a full screen (e.g., 6000B in
In some embodiments, in response to detecting the input corresponding to a request to display a system user interface of the computer system, the computer system displays the first content in a window (e.g., a PiP window) that has the same size and/or location as a window in which the first content was displayed prior to entering the full-screen mode.
In some embodiments, while outputting the first content in the second user interface (e.g., and not in expanded display mode), the computer system detects an input (e.g., 6234) corresponding to a request to hide the second user interface (e.g., a swipe or flick gesture on the second user interface; a swipe up gesture from the bottom of a display; and/or an input corresponding to a request to display a home screen). In some embodiments, in response to detecting the input corresponding to a request to hide the second user interface, the computer system ceases displaying at least a portion of the second user interface (e.g., 6000B in
In some embodiments, while outputting the first content in the second user interface (e.g., 6070), the computer system detects an input (e.g., 6082) corresponding to a request to move the second user interface (e.g., a drag gesture that begins on the second user interface, a click and hold or a press and hold input followed by movement of the input while the click or press is maintained). In some embodiments, in response to detecting the input corresponding to a request to move the second user interface, the computer system moves the second user interface (e.g., while continuing to output the first content in the second user interface). In some embodiments, moving the second user interface includes relocating and/or translating the second user interface from a first displayed location to a second displayed location and, optionally, without changing a size of the second user interface. In some embodiments, while outputting the first content in the second user interface, the computer system detects an input corresponding to a request to resize the second user interface (e.g., a pinch or de-pinch gesture and/or a drag on a corner region of the second user interface). In some embodiments, in response to detecting the input corresponding to a request to resize the second user interface, the computer system resizes the second user interface (e.g., expands/reduces a displayed size of the second user interface).
In some embodiments, the first notification includes a third indication (e.g., name, initials, and/or avatar) of a participant of the shared-content session that selected the first content for (e.g., added the first content to) the shared-content session. Outputting the first notification including a third indication of a participant of the shared-content session that selected the first content for the shared-content session provides feedback to a user of the computer system that the participant selected the first content for the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, outputting the first content includes, in accordance with a determination that outputting the first content does not include displaying a visual representation of the first content (e.g., the first content is music, a song, and/or other audio content that does not include video), navigating to (e.g., displaying and/or bringing to the foreground) the first application (and, optionally, displaying a shared-content session object that includes information associated with the shared-content session and/or one or more selectable shared-content session function options that, when selected, cause the computer system to perform a respective function associated with the shared-content session). Navigating to the first application in accordance with a determination that outputting the first content does not include displaying a visual representation of the first content reduces input at the computer system by automatically navigating to the first content without requiring additional user input. Performing an operation when a set of conditions is met without requiring additional user input enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, outputting the first content includes, in accordance with a determination that outputting the first content includes displaying the visual representation of the first content (e.g., 6000B in
In some embodiments, the computer system displays the visual representation of the first content without navigating to the first application or displaying the shared-content session object.
In some embodiments, the computer system receives an indication (e.g., data) that the first content has been removed from the shared-content session (e.g., via input 6116 or 6362) (e.g., the first content is no longer being shared). In some embodiments, in response to receiving the indication that the first content has been removed from the shared-content session, the computer system outputs a content-removed notification (e.g., 6120 or 6370) that includes an indication (e.g., text) that the first content has been removed from the shared-content session (e.g., “Participant X has stopped sharing Content A”). Outputting a content-removed notification in response to receiving the indication that the first content has been removed from the shared-content session provides feedback to a user of the computer system that the first content has been removed from the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system detects an input corresponding to selection of the content-removed notification. In some embodiments, in response to detecting the input corresponding to selection of the content-removed notification, the computer system displays one or more representations of status (e.g., 6038A, 6038B, 6042A, and/or 6042B) (e.g., joined, invited, and/or inactive) of users associated with the shared-content session with respect to the shared-content session. Displaying one or more representations of status of users associated with the shared-content session with to the shared-content session in response to detecting the input corresponding to selection of the content-removed notification provides feedback to a user of the computer system about the status of users associated with the shared-content session with respect to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system receives an indication (e.g., data) that the first content has been ended (e.g., that a participant of the shared-content session has stopped the first content and/or initiated playback of different content in place of the first content). In some embodiments, in response to receiving the indication that the first content has been ended, the computer system displays a content-ended notification (e.g., 6120 or 6370) that includes an indication (e.g., text, initials, and/or avatar) of a participant of the shared-content session that caused the first content to end (and, optionally, an indication of the first content and/or the action that was taken with respect to the first content) (e.g., “Participant X ended Content A”). Displaying a content-ended notification in response to receiving the indication that the first content has been ended provides feedback to a user of the computer system about a participant of the shared-content session that caused the first content to end. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system receives an indication (e.g., data) that the first content has ended (e.g., that an end of the first content has been reached; and/or that a participant of the shared-content session has stopped the first content or initiated playback of different content in place of the first content). In some embodiments, in response to receiving the indication that the first content has ended, the computer system displays an end-of-content notification (e.g., 6120 or 6370) that includes an indication (e.g., text) that the first content has ended and ceases output of the first content (e.g., 6000A in
In some embodiments, the computer system receives a request to display a respective portion of a user interface (e.g., 6004A or 6004B) of a messaging application that includes a plurality of messages (e.g., 6004A-1 or 6004B-1) between users associated with the shared-content session. In some embodiments, in response to receiving the request to display the respective portion of the user interface of the messaging application, the computer system: displays a user interface (e.g., 6004A or 6004B) of the messaging application, the user interface of the messaging application including (e.g., in a conversation region of the user interface of the messaging application) the plurality of messages (e.g., 6004A-1 or 6004B-1) between users associated with the shared-content session (e.g., users that have been invited to the shared-content session; a group of users in a message conversation); and in accordance with a determination that the shared-content session is available (e.g., the shared-content session is active; the shared-content session can be initiated), displays a shared-content session notification (e.g., 6010A, 6010B, and/or 6024) (e.g., a message that the shared-content session is available) in the user interface of the messaging application (e.g., in the conversation region of the user interface of the messaging application) that includes information associated with the shared-content session (e.g., a representation (e.g., name, initial(s), video representation, and/or avatar) of a user that initiated the shared-content session, a number of participants in the shared-content session, representation(s) of participants in the shared-content session, and/or content in the shared-content session). Displaying a shared-content session notification in the user interface of the messaging application in accordance with a determination that the shared-content session is available provides feedback to a user of the computer system that the shared-content session is available and provides information associated with the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, displaying the first content includes, in accordance with a determination that a video chat is ongoing with one or more participants in the shared-content session, concurrently displaying the first content (e.g., 6150B in
In some embodiments, in accordance with a determination that a video chat is not ongoing with one or more participants in the shared-content session, displaying the first content without displaying video representation of other participants in the shared-content session. In some embodiments, multiple representations of other participants are displayed concurrently with the first content.
In some embodiments, outputting the first notification includes displaying the first notification (e.g., displaying a banner and/or pop-up notification). In some embodiments, in accordance with a determination that dismiss-notification criteria has been met (e.g., the first notification has been displayed for a predetermined amount of time (e.g., 1 second, 2 seconds, 3 seconds, 5 seconds), the computer system ceases display of the first notification (e.g., automatically dismisses the first notification without user input). Ceasing display of the first notification in accordance with a determination that dismiss-notification criteria has been met reduces input at the computer system by automatically ceasing display of the first notification without requiring additional user input. Reducing input at the computer system enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system detects a first input (e.g., 6232) corresponding to selection of the first notification (e.g., 6230). In some embodiments, in response to detecting the first input corresponding to selection of the first notification, the computer system displays a second shared-content session object (e.g., 6015A or 6015B) that includes one or more selectable options (e.g., 6015A-1, 6015A-4, 6015A-5, 6015A-6, 6015A-7, 6015A-8, 6015B-1, 6015B-4, 6015B-5, 6015B-6, 6015B-7, and/or 6015B-8) (e.g., controls for the shared-content session) that, when selected, cause the computer system to perform a respective function associated with the shared-content session (and that, optionally, includes information associated with the shared-content session). Displaying the second shared-content session object in response to detecting the first input corresponding to selection of the first notification provides additional controls for performing a respective function associated with the shared-content session without cluttering the user interface with additional displayed controls until the first input corresponding to selection of the first notification is detected, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the one or more selectable options include, e.g., audio on/off, video on/off, shared-content session on/off, and/or a link to a user interface that displays status of users of the shared-content session (e.g., a group status card)).
In some embodiments, in conjunction with displaying the second shared-content session object (e.g., 6015A or 6015B), the computer system moves a display (e.g., 6015A or 6150B) (e.g., a displayed location) of the first content (e.g.,
In some embodiments, in response to detecting selection of the first notification, the computer system moves the display of the first content to avoid overlap with display of the shared-content session object.
In some embodiments, output of the first content on the computer system is synchronized with output of the first content on the external computer system (e.g.,
In some embodiments, while outputting the first content, the computer system detects, via the one or more input devices, an input (e.g., 6246, 6278, 6336, or 6362) (e.g., activation of a media control button) corresponding to a request to change (e.g., stop, start, pause, rewind, and/or fast forward) output (e.g., playback) of the first content (e.g., content that was not added to the shared-content session by the user of the computer system). In some embodiments, in response to detecting the input corresponding to the request to change output of the first content, the computer system outputs (e.g., changing the output of) the first content (e.g., at the computer system) in accordance with the request to change output of the first content.
In some embodiments, the request at the computer system to change the output of the first content, causes the output of the first content to change at the external computer system in accordance with the request to change the output of the first content. In this way, output of content that has been selected for the shared-content session at the external computer system can be controlled by input at the computer system, and the input can affect output at both the computer system and the external computer system. Similarly, output of content that has been selected for the shared-content session at the external computer system can be controlled by input at a different, external computer system, and the input can affect output at the computer system, the external computer system, and the different external computer system.
In some embodiments, the computer system detects (e.g., before outputting the first content using the first application that is associated with the first content) an input (e.g., 6384 and/or 6390) corresponding to a request to output the first content. In some embodiments, in response to detecting the input corresponding to a request to output the first content, the computer system, in accordance with a determination that the first application is not available (e.g., not downloaded, not stored, and/or not installed) on the computer system (e.g., and, optionally, that the device does not include any application that is capable of providing access to the first content), displays a user interface (e.g., 6392) of a second application (e.g., an app store application) that provides a capability (e.g., 6394) to download the first application (or another application that is capable of providing access to the first content). Displaying a user interface of a second application that provides a capability to download the first application in accordance with a determination that the first application is not available in response to detecting the input corresponding to a request to output the first content reduces inputs at the computer system by automatically displaying the user interface of the second application that provides a capability to download the first application without requiring additional user input. Reducing inputs at the computer system enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system displays, in the user interface of the second application, a selectable download option (e.g., 6394) (e.g., an icon, button, and/or affordance) that, when selected, causes the computer system to initiate downloading (e.g., installation) of the first application (or another application that is capable of providing access to the first content). Displaying, in the user interface of the second application, a selectable download option provides additional controls for causing the computer system to initiate downloading of the first application without cluttering the user interface with additional displayed controls until an input is detected, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the first notification includes a selectable move-session option (e.g., 6492 or 6502) (e.g., an icon, button, and/or affordance) that, when selected, causes output of a portion of content corresponding to the shared-content session (e.g., the shared-content session and/or audio or video representing one or more participants in a real-time communication session (e.g., a video chat)) via an output device (e.g., 6500) (e.g., a control device, a set-top device, and/or a receiver) that is in communication with a second computer system (e.g., a monitor, a television, a screen, and/or a display generation component) (and, optionally, disconnects the computer system from the communication session). Outputting the first notification including a selectable move-session option provides additional controls for causing output of a portion of content corresponding to the shared-content session via an output device that is in communication with a second computer system without cluttering the user interface with additional displayed controls until an input is detected, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, selecting the move-session option causes the computer system to transfer or move (e.g., via a wireless communication protocol) the communication session from the computer system to the second computer system (e.g., by way of an output device that is in communication with the second computer system). In some embodiments, causing output of a portion of content corresponding to the shared-content session via the output device that is in communication with the second computer system includes adding the output device and/or the second computer system to the shared-content session.
In some embodiments, the computer system displays a real-time communication interface (e.g., 6170A or 6170B) of a real-time communication session between a plurality of users, where the real-time communication interface includes one or more representations (e.g., 6176, 6178, and/or 6184) (e.g., video feeds, and/or avatars) of a set of the users (e.g., participants) of the real-time communication session, where the one or more representations occupy a first display location. In some embodiments, outputting the first content includes displaying the first content (e.g., 6150B) at a second display location that does not include the first display location (e.g., 6000B in
In some embodiments, the first content is displayed concurrently with the one or more representations of the set of the users of the real-time communication session such that the first content does not overlap the one or more representations of the set of users of the real-time communication session. In some embodiments, the computer system moves (e.g., within the real-time communication interface) the one or more representations of the set of users of the real-time communication session to avoid (e.g., make space for) the display of the first content and/or the shared-content session object.
In some embodiments, outputting the first notification includes displaying the first notification such that the first notification is overlaid on (e.g., on top of, in front of, and/or in the foreground relative to) one or more graphical objects of the first user interface.
In some embodiments, the computer system detects a second input corresponding to selection of the first notification. In some embodiments, in response to detecting the second input corresponding to selection of the first notification, the computer system displays the first content in a foreground relative to the first user interface (e.g., the first content is moved from behind one or more graphical objects to in front of the one or more graphical objects).
In some embodiments, in response to receiving the indication that the first content has been selected for the shared-content session (e.g., in
In some embodiments, the graphical element corresponding to the first application is displayed in, added to, and/or displayed adjacent to an application dock (e.g., a region of a display that includes a plurality of application icons for launching respective applications). In some embodiments, in response to receiving the indication that the first content has been selected for the shared-content session, the computer system displays an animation of the graphical element corresponding to the first application, e.g., bouncing in the application dock.
In some embodiments, the first content includes one or more window controls of a user interface (e.g., 14126 in
In some embodiments, the user interface displayed by the external computer system includes a graphical shared-content-session-status indicator that indicates the status of the external computer system with respect to the shared-content system (e.g., that the external computer system is connected to the shared-content session) and/or the status of the user interface of the external computer system with respect to the shared-content session (e.g., whether or not the user interface is in the shared-content session (e.g., being shared with other participants of the shared-content session)). In some embodiments, the shared-content-session-status indicator is not included in the first content and/or is not displayed by the computer system, e.g., even though the user interface of the external computer system is in the shared-content session.
In some embodiments, the computer system outputs, via an output generation component of the one or more output generation components, the first content using the first application that is associated with the first content in accordance with a determination that the computer system (or a user associated with the computer system) is entitled to the first content (e.g., 6000B in
In some embodiments, the computer system detects, via the one or more input devices, an input (e.g., 6410) corresponding to selection of the entitlement-required notification (e.g., 6406 and/or 6408). In some embodiments, in response to detecting the input corresponding to selection of the entitlement-required notification, the computer system displays a selectable obtain-entitlement option (e.g., 6408 or 6414) (e.g., icon, button, and/or affordance) that, when selected, initiates a process (e.g., as shown in
In some embodiments, the process to obtain the entitlement includes displaying a website or application that provides the capability for a user to select an entitlement, input payment information, start a free trial, and/or complete purchase of the entitlement.
In some embodiments, in accordance with a determination that the first content has been selected for the shared-content session using a first entitlement, the obtain-entitlement option (e.g., 6408 or 6414), when selected, initiates a process to obtain the first entitlement. In some embodiments, in accordance with a determination that the first content has been selected for the shared-content session using a second entitlement that is different from the first entitlement, the obtain-entitlement option (e.g., 6408 or 6414), when selected, initiates a process to obtain the second entitlement. In some embodiments, the particular entitlement obtained via the obtain-entitlement option is determined based on which entitlement is used to initiate playback of the first content in the shared-content session. For example, if a first entitlement is used to initiate playback of the first content, then the obtain-entitlement option is selectable to obtain the first entitlement, and if a second entitlement is used to initiate playback of the first content, then the obtain-entitlement option is selectable to obtain the second entitlement.
In some embodiments, the computer system detects a set of one or more inputs (e.g., 6410, 6416, 6422, and/or 6426) that result in obtaining (e.g., purchasing) the entitlement, where the one or more inputs include an input corresponding to selection of the obtain-entitlement option (e.g., 6408 or 6414). In some embodiments, the computer system displays information associated with obtaining the entitlement such as a cost (e.g., purchase price) of the entitlement, a duration of the entitlement, user agreement(s), and/or promotional content. In some embodiments, the set of one or more inputs include inputs corresponding to initiating a purchase, verifying an identity of the user (e.g., using a biometric verification, user identification, passcode, and/or password), and/or activation of a hardware input element such as a button (e.g., 204 and/or 206) and/or input mechanism (e.g., 506 and/or 508). In some embodiments, in response to detecting the set of one or more inputs that result in obtaining the entitlement, the computer system outputs the first content (e.g., displays 6150B in
In some embodiments, in response to receiving the indication that the first content has been selected for the shared-content session, and in accordance with a determination that the computer system does not have an entitlement that was used to select the first content for the shared-content session at the external computer system, the computer system foregoes output of the first content (e.g., 6000B in
In some embodiments, if a participant of the shared-content session does not have an entitlement that matches the entitlement that the user who started sharing the first content used to select the first content for the shared-content session, then the first content is not played for that participant.
In some embodiments, outputting the first content includes outputting the first content in a fifth user interface (e.g., the second user interface, an application window, and/or a PiP widow) while the fifth user interface is in a first display state (e.g., size, location, minimized, maximized, docked, expanded display state, and/or full screen). In some embodiments, while the fifth user interface is in the first display state, the computer system detects a request (e.g., 6082, 6104, 6234, 6236, 6242, 6342, or 6346) to change the display state of the fifth user interface. In some embodiments, in response to detecting the request to change the display state of the fifth user interface, the computer system changes the display state of the fifth user interface to a second display state, different from the first display state (e.g., changing a size and/or location of the fifth user interface), according to the request to change the display state of the fifth user interface. In some embodiments, while the fifth user interface is in the second display state, the computer system receives an indication (e.g., data) that second content, different from the first content, has been selected for the shared-content session at a second external computer system. In some embodiments, in response to receiving the indication that second content has been selected for the shared-content session, the computer system outputs the second content in the second display state (e.g., replacing displayed content in the fifth user interface with the second content; ceasing displaying the fifth user interface and displaying the second content in a sixth user interface that has the same size and/or location as the fifth user interface). Outputting the second content in the second displayed state reduces inputs at the computer system by automatically displaying content at a location that was previously selected by a user without having to prompt the user for the displayed location or requiring the user to move the content to the location. Reducing inputs at the computer system enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system receives an indication (e.g., data) that a first event (e.g., a user has joined the shared-content session, a participant has left the shared-content session, and/or a user has requested a change in output of content in the shared-content session (e.g., play, pause, stop, fast forward, rewind, skip track, and/or change content)) that meets first notification criteria (e.g., the action is a type of action for which a notification is to be displayed, unless other criteria are met) has occurred in the shared-content session (e.g., a participant leaves the shared-content session in
In some embodiments, the computer system receives an indication that a third event (e.g., a user has joined the shared-content session, a participant has left the shared-content session) that meets second notification criteria (e.g., the action is a type of event for which a notification is to be displayed, unless other criteria are met) has occurred in the shared-content session. In some embodiments, the computer system receives an indication that a fourth event that meets the second notification criteria has occurred in the shared-content session (e.g., after receiving the indication that the third event that meets the notification criteria has occurred in the shared-content session). In some embodiments, after (e.g., in response to) receiving the indication that the fourth event that meets the second notification criteria has occurred in the shared-content session: in accordance with a determination that notification-aggregation criteria (e.g., the indication of the fourth event is received before a notification of the third event is output; the indication of the fourth event is received within a predetermined amount of time of receiving the indication of the third event; the third event is determined to be the same type of event (e.g., joining the shared-content session, leaving the shared-content session, and/or changing connection status with respect to the shared content session) as the fourth event; or any combination thereof) are met, where the notification-aggregation criteria including a criterion that is met if the third event and the fourth event are determined to be of a same type of event, the computer system outputs a first notification (e.g., 6028 in
In some embodiments, the computer system ceases output of the first content via an output generation component of the one or more output generation components. In some embodiments, the computer system ceases output of the first content in response to a request to output selected content that is different from content in the shared-content session, such as, e.g., content that is selected to be output by the computer system but not selected for the shared-content session (e.g., private and/or non-shared content that is only to be displayed by the local computer system). In some embodiments, the request to output the selected content does not include a request to add the selected content to the shared-content session. In some embodiments, after ceasing output of the first content via an output generation component of the one or more output generation components and while the first content is in the shared-content session (e.g., the computer system has stopped playback of the first content, but the first content is still being shared in the shared-content session), and in accordance with (e.g., in response to) a determination that shared-content-reminder criteria is met (e.g., output of content (e.g., private content) that was selected for output by the computer system but not for the shared-content session has ended; and/or a condition or event that caused the computer system to cease output of the first content has ended), the computer system outputs a shared-content-reminder notification (e.g., 6015A-1, 6312, and/or 6314) that indicates that the first content is in the shared-content session (e.g., that output of the first content is available via the shared-content session). Outputting a shared-content-reminder notification in accordance with a determination that shared-content-reminder criteria is met provides feedback indicating that the first content is in the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, in accordance with a determination that the shared-content-reminder criteria is not met, the computer system forgoes output of the shared-content-reminder notification that the first content is in the shared-content session (e.g., the computer system waits to output the shared-content-reminder notification until the shared-content-reminder criteria is met).
In some embodiments, the computer system detects a third input corresponding to selection of the first notification. In some embodiments, in response to detecting the third input corresponding to selection of the first notification, the computer system displays a third shared-content session object (e.g., 6015A or 6015B) that includes information (e.g., 6015A-1, 6015A-2, 6015A-3, 6015B-1, 6015B-2, and/or 6015B-3) associated with the shared-content session and/or one or more selectable shared-content session function options (e.g., 6015A-1, 6015A-4, 6015A-5, 6015A-6, 6015A-7, 6015A-8, 6015B-1, 6015B-4, 6015B-5, 6015B-6, 6015B-7, and/or 6015B-8) that, when selected, cause the computer system to perform a respective function associated with the shared-content session. In some embodiments, while displaying the third shared-content session object, the computer system: receives an indication that a fifth event (e.g., a user has joined the shared-content session, a participant has left the shared-content session) that meets third notification criteria (e.g., the event is a type of event for which a notification is to be displayed, unless other criteria are met) has occurred in the shared-content session; and in response to receiving the indication that the fifth event has occurred: in accordance with a determination that the fifth event meets event-notification criteria (e.g., the fifth event is determined to have a priority that satisfies a priority threshold, where different event have different priorities with respect to outputting a notification of the event), outputs a fourth notification that includes information about the fifth event; and in accordance with a determination that the fifth event does not meet the action-notification criteria, foregoes output of the fourth notification that includes information about the fifth event. In some embodiments, the computer system ceases display of the third shared-content session object. In some embodiments, the computer system ceases display of the third shared-content session object in accordance with (e.g., in response to) a determination that the third shared-content session object has been displayed for a predetermined amount of time (e.g., 1 second, 2 seconds, 3 seconds, 4 seconds, 5 seconds) (e.g., the third shared-content session object is dismissed (e.g., automatically, without user input) after being displayed for a predetermined amount of time without being interacted with by a user). In some embodiments, after ceasing display of the third shared-content session object, the computer system outputs a fifth notification, wherein the fifth notification includes information about an event that occurred while displaying the third shared-content session object. Outputting the fifth notification after ceasing display of the third shared-content session object provides feedback by displaying information about an event that occurred while displaying the third shared-content session object. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, in accordance with a determination that a first action that occurred while displaying the third shared-content session object has a higher notification priority than a second action that occurred while displaying the third shared-content session object, the fifth notification includes information about the first action that occurred while displaying the third shared-content session object without including information about the second action that occurred while displaying the third shared-content session object; and in accordance with a determination that the second action that occurred while displaying the third shared-content session object has a higher notification priority than the first action that occurred while displaying the third shared-content session object, the fifth notification includes information about the second action that occurred while displaying the third shared-content session object without including information about the first action that occurred while displaying the third shared-content session object (e.g., after ceasing display of the third shared-content session object, the computer system displays a notification with information corresponding to the action that occurred while displaying the third shared-content session object that has the highest priority relative to the actions that occurred while displaying the third shared-content session object).
In some embodiments, the first notification includes a link associated with an application (e.g., a particular part of an application, a playlist user interface, and/or a particular piece of content in an application) on the computer system, where the link is provided by the external computer system (e.g., selection of the notification causes the computer system to output or navigate to the portion of the application). In some embodiments, the computer system receives an input corresponding to a selection of the link. In some embodiments, in response to receiving the input corresponding to a selection of the link: in accordance with a determination that the link corresponds to a first portion of the application (e.g., first displayed content of the application), the computer system displays the first portion of the application (e.g., navigating to the first portion of the application); and in accordance with a determination that the link corresponds to a second portion of the application different from the first portion of the application (e.g., second displayed content of the application), the computer system displays the second portion of the application (e.g., navigating to the second portion of the application). Displaying the first portion of the application in accordance with a determination that the link corresponds to a first portion of the application, and displaying the second portion of the application in accordance with a determination that the link corresponds to a second portion of the application, reduces inputs at the computer system by providing a link that can be selected to navigate to different portions of the application without requiring additional user input to navigate to the different portions of the application on the computer system. Reducing inputs at the computer system enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, while (e.g., in accordance with a determination that) the shared-content session includes screen-share content (e.g., as shown in
Note that details of the processes described above with respect to method 800 (e.g.,
As described below, method 900 provides an intuitive way for adding content to a shared-content session. The method reduces the cognitive burden on a user for adding content to a shared-content session, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to add content to a shared-content session faster and more efficiently conserves power and increases the time between battery charges.
The computer system (e.g., 6000B) receives (902), via the one or more input devices (e.g., 6001B, 6002B, and/or 6003B), an input (e.g., 6064, 6218, 6224, 6336, 6376, or 6444) (e.g., a selection of a screen sharing affordance; or a selection of a play affordance) corresponding to a request to add first content (e.g., content displayed at the computer system) (e.g., screen-share content) to a shared-content session between the computer system (e.g., 6000B) and an external computer system (e.g., 6000A) (e.g., one or more external computer systems).
In response to receiving (904) the input: in accordance with a determination (906) that the first content is content of a first type (e.g., 6060, 6088, or 6102) (e.g., content that includes personal information; content that is shared from the computer system; and/or screen-share content), and prior to adding the first content to the shared-content session, the computer system (e.g., 6000B) outputs an alert (e.g., 6066) (e.g., an audible alert and/or a displayed alert) that the first content is going to be added to the shared-content session, wherein the alert includes an option (e.g., 6066) (e.g., an option that is selectable (e.g., by an audio or touch input); and/or a selectable graphical object (e.g., an affordance that includes a countdown)) to cancel adding the first content to the shared-content session before the first content is added to the shared-content session. Outputting an alert that the first content is going to be added to the shared-content session, wherein the alert includes an option to cancel adding the first content to the shared-content session before the first content is added to the shared-content session, provides feedback to a user of the computer system that the first content is being added to the shared-content session, provides additional controls for cancelling adding the first content to the shared-content session without cluttering the user interface with additional displayed controls until the input is received, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In accordance with a determination (908) that the first content is content of a second type that is different from the first type (e.g., content that does not include personal information; content for synchronized output; and/or media content), the computer system (e.g., 6000B) adds the first content to the shared-content session without outputting the alert that the first content is going to be added to the shared-content session before the first content is added to the shared-content session (e.g.,
In some embodiments, content of the first type includes personal information (e.g., a user's screen, a user's email address, a message from a user, a user's photo(s), and/or a user's name), and content of the second type does not include personal information. In some embodiments, the first content is determined to be content of the first type in accordance with a determination that the first content includes personal information. In some embodiments, the first content is determined to be content of the second type (e.g., not content of the first type) in accordance with a determination that the first content does not include personal information.
In some embodiments, content of the first type includes content (e.g., 6060, 6088, or 6102) that is shared from the computer system (e.g., 6000A or 6000B) (e.g., the computer system shares (e.g., transmits) actual audio and/or image (e.g., video) data of the content; screen-share content), content of the second type includes content (e.g., 6138 or 6446) that is synchronized between the computer system (e.g., 6000A or 6000B) and the external computer system (e.g., 6000B or 6000A) (e.g., not screen-share content), and content of the second type is not shared from the computer system (e.g., the computer system does not share (e.g., transmit) actual audio and/or image (e.g., video) data of the content; the computer system can share a representation of the content (but not the actual content) and/or data to facilitate synchronized output between the computer system and the external computer system).
In some embodiments, content of the first type includes (e.g., is) a graphical representation (e.g., 6070) of content (e.g., 6060, 6088, or 6102) displayed on a screen of the computer system (e.g., 6000B) (e.g., screen-share content), and wherein content of the second type includes (e.g., is) media content (e.g., 6138 or 6446) (and, optionally, does not include a screen of the computer system and/or is provided by a content server that is different from the computer system).
In some embodiments, the alert that the first content is going to be added to the shared-content session includes a countdown indicator (e.g., 6066) that progresses through a plurality of states to indicate an amount of time until content is shared in the shared-content session (e.g., a displayed numeric countdown (e.g., “5, 4, 3, 2, 1” or “3, 2, 1”)). Outputting the alert with a countdown indicator that progresses through a plurality of states to indicate an amount of time until content is shared in the shared-content session provides feedback to a user of the computer system of the timing for when the first content is being added to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the input corresponding to the request to add first content to the shared-content session between the computer system (e.g., 6000B) and the external computer system (e.g., 6000A) includes selection of a sharing initiation option (e.g., 6015A-8 or 6015B-8) (e.g., affordance, icon, button). In some embodiments, outputting the alert that the first content is going to be added to the shared-content session includes ceasing output of the sharing initiation option and displaying the countdown indicator (e.g.,
In some embodiments, adding the first content to the shared-content session without the computer system outputting the alert that the first content is going to be added to the shared-content session before the first content is added to the shared-content session includes the computer system adding the first content (e.g., 6138 or 6446) to the shared-content session without outputting the countdown indicator (e.g., without displaying 6066).
In some embodiments, the computer system (e.g., 6000A or 6000B) displays (e.g., prior to and/or while receiving the input corresponding to a request to add first content to a shared-content session between the computer system and an external computer system) a selectable navigation option (e.g., 6272, 6314, or 6316) to navigate to the first content (e.g., in response to detecting an input selecting the option to navigate to the first content, the computer system outputs the first content (e.g., displays the first content; opens the first content (or a window or application that includes the first content); and/or brings the first content (or a window that includes the first content) to the foreground)). Displaying a selectable navigation option to navigate to the first content provides additional controls for displaying content without cluttering the user interface with additional displayed controls until an input is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000B) displays (e.g., prior to and/or while receiving the input corresponding to a request to add first content to a shared-content session between the computer system and an external computer system) a selectable leave option (e.g., 6015A-9) to leave (e.g., exit, disconnect from, and/or cease participation in) the shared-content session (e.g., in response to detecting an input selecting the leave option to leave the shared-content session, the computer system leaves the shared-content session). Displaying a selectable option to leave the shared-content session provides additional controls for exiting the shared-content session without cluttering the user interface with additional displayed controls until an input is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000B) initiates connection to (e.g., joining or initiating) the shared-content session, where initiating the connection to the shared-content session includes opening (e.g., automatically, without further input) an audio channel that adds audio detected by the one or more input devices (e.g., 6001B, 6002B, and/or 6003B) (e.g., a microphone) to the shared-content session between the computer system and the external computer system (e.g., 6015A-6 is emphasized in
In some embodiments, the computer system (e.g., 6000B) displays a selectable sharing option (e.g., 6015A-8, 6015B-8, 6180A-1, or 6180B-1) to add content to the shared-content session (e.g., an icon, button, and/or affordance that, when selected, initiates a process for adding content to the shared-content session) while the computer system (e.g., 6000B) is connected to a real-time communication session (e.g., 6170A or 6170B (e.g., a phone call, a video communication session). Displaying a selectable sharing option to add content to the shared-content session while the computer system is connected to a real-time communication session provides additional controls for adding content to the shared-content session without cluttering the user interface with additional displayed controls until an input is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, in response to detecting selection of the sharing option, the computer system adds (e.g., automatically, without further user input) content to the shared-content session and/or displays an interface that provides content options to add to the shared-content session.
In some embodiments, in accordance with a determination that the computer system (e.g., 6000B) is sharing content of the first type (e.g., 6060, 6088, or 6102) (e.g., screen sharing) with the shared-content session (and, optionally, in accordance with a determination that the shared-content session object (e.g., 6015) is not being displayed (e.g., is minimized or hidden)), the computer system (e.g., 6000B) displays (e.g., in a corner of a display, in an upper left corner of a display) a first shared-content session indicator (e.g., 6021B) (e.g., a persistent indicator) that indicates that the computer system (e.g., 6000B) is sharing content of the first type with the shared-content session. Displaying a first shared-content session indicator provides feedback to a user of the computer system that the computer system is sharing content of the first type with the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the computer system can selectively display and/or hide (e.g., minimize, cease display of, output in a background) a shared-content session object that includes information associated with the shared-content session and/or selectable options for managing and/or performing functions associated with the shared-content session.
In some embodiments, the first shared-content session indicator (e.g., 6021B) is output at a first location. In some embodiments, in accordance with a determination that the computer system (e.g., 6000B) is connected to the shared-content session and is not sharing content of the first type with the shared-content session (and, optionally, in accordance with a determination that the shared-content session object is not being displayed (e.g., is minimized or hidden)), the computer system (e.g., 6000B) displays, at the first location, a second shared-content session indicator (e.g., 6020A or 6020B) (e.g., a persistent indicator), different from the first shared-content session indicator (e.g., the second shared-content session indicator has a different appearance, color, shape, and/or icon than the first shared-content session indicator), that indicates that the computer system (e.g., 6000B) is connected to the shared-content session (e.g., but is not sharing content of the first type). Displaying, at the first location, a second shared-content session indicator in accordance with a determination that the computer system is connected to the shared-content session and is not sharing content of the first type with the shared-content session provides feedback to a user of the computer system that the computer system is connected to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the first shared-content session indicator (e.g., 6021B) has a first appearance (e.g., color, icon, shape, and/or text) and the second shared-content session indicator (e.g., 6020A or 6020B) has a second appearance that is different from the first appearance. Displaying the first shared-content session indicator having a first appearance and the second shared-content indicator having a second appearance different from the first appearance provides feedback to a user of the computer system about the type of content that is being shared in the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the first appearance of the first shared-content session indicator (e.g., 6021B) includes a first color (e.g., red; the first appearance does not include a second color (e.g., blue or yellow)) and the second appearance of the second shared-content session indicator (e.g., 6020A or 6020B) includes a second color different from the first color (e.g., blue or yellow; the second appearance does not include the first color). Displaying the first shared-content session indicator having a first color and the second shared-content indicator having a second color different from the first color provides feedback to a user of the computer system about the type of content that is being shared in the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000B) detects an input (e.g., 6032 or 6062) corresponding to selection of the first shared-content session indicator. In response to detecting the input corresponding to selection of the first shared-content session indicator, the computer system (e.g., 6000B) displays a shared-content session object (e.g., 6015A or 6015B) that includes information (e.g., 6015A-1, 6015B-1, 6015A-2, and/or 6015A-3) associated with the shared-content session (e.g., participant names, group name, number of participants, participant status, and/or content in the shared-content session) and/or one or more selectable shared-content session function options (e.g., 6015A-1, 6015B-1, 6015A-4, 6015B-4, 6015A-5, 6015B-5, 6015A-6, 6015B-6, 6015A-7, 6015B-7, 6015A-8, 6015B-8, 6015A-9, and/or 6015B-9) that, when selected, cause the computer system (e.g., 6000B) to perform a respective function associated with the shared-content session (e.g., add content (e.g., audio/video content and/or screen-share content) to the shared-content session, turn audio (e.g., microphone) on/off, turn video (e.g., camera) on/off, initiate message conversation with users associated with the shared-content session, and/or initiate a real-time (e.g., audio and/or video) communication session with users associated with the shared-content session). Displaying, in response to detecting the input corresponding to the selection of the first shared-content session indicator, a shared-content session object that includes information associated with the shared-content session and/or one or more selectable shared-content session function options that, when selected, cause the computer system to perform a respective function associated with the shared-content session provides additional controls for performing a respective function associated with the shared-content session without cluttering the user interface with additional displayed controls until an input is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000B) displays a shared-content session object (e.g., 6015A or 6015B) that includes information (e.g., 6015A-1, 6015B-1, 6015A-2, and/or 6015A-3) associated with the shared-content session and/or one or more selectable shared-content session function options (e.g., 6015A-1, 6015B-1, 6015A-4, 6015B-4, 6015A-5, 6015B-5, 6015A-6, 6015B-6, 6015A-7, 6015B-7, 6015A-8, 6015B-8, 6015A-9, and/or 6015B-9) that, when selected, cause the computer system (e.g., 6000B) to perform a respective function associated with the shared-content session. While outputting a shared-content session object, the computer system (e.g., 6000B) detects an input (e.g., 6014, 6078, 6188, or 6268) (e.g., a press of a home button, a swipe up gesture (e.g., from a location at the bottom of a display), a request to display a home interface) corresponding to a request to output a user interface (e.g., 6018 or 6088) provided by an operating system of the computer system (e.g., 6000B) (e.g., a home screen, a user interface (e.g., user interface 400) that includes user interface objects corresponding to respective applications, and when a user interface object corresponding to a respective application is activated, the computer system displays the respective application corresponding to the activated user interface object). In response to detecting the input corresponding to the request to output the user interface provided by the operating system of the computer system (e.g., 6000B), the computer system (e.g., 6000B) ceases output of (e.g., minimizing, hiding) the shared-content session object (e.g., and outputting the user interface provided by the operating system of the computer system and, optionally, displaying the first or second shared-content session indicator).
In some embodiments (e.g., while the computer system is connected to the shared-content session), the computer system (e.g., 6000B) displays a shared-content session object (e.g., 6015A or 6015B) that includes information (e.g., 6015A-1, 6015B-1, 6015A-2, and/or 6015A-3) associated with the shared-content session (e.g., and, optionally, one or more selectable shared-content session function options that, when selected, cause the computer system to perform a respective function associated with the shared-content session). In some embodiments, the information associated with the shared-content session includes a content indicator (e.g., 6015A-1 or 6015B-1 in
In some embodiments (e.g., while the computer system is connected to the shared-content session), the computer system (e.g., 6000B) displays a shared-content session object (e.g., 6015A or 6015B) that includes information (e.g., 6015A-1, 6015B-1, 6015A-2, and/or 6015A-3) associated with the shared-content session (e.g., and, optionally, one or more selectable shared-content session function options that, when selected, cause the computer system to perform a respective function associated with the shared-content session), where the information associated with the shared-content session includes a participant indicator (e.g., 6015A-1 or 6015B-1 in
In some embodiments (e.g., while the computer system is connected to the shared-content session), the computer system (e.g., 6000B) displays a shared-content session object (e.g., 6015A or 6015B) that includes information (e.g., 6015A-1, 6015B-1, 6015A-2, and/or 6015A-3) associated with the shared-content session (e.g., and, optionally, one or more selectable shared-content session function options that, when selected, cause the computer system to perform a respective function associated with the shared-content session), where the information associated with the shared-content session includes an application indicator (e.g., 6212) (e.g., a graphical indication) that is based on an application associated with content in the shared-content session (e.g., the application indicator includes an icon of the application that is sharing content in the shared-content session). Displaying a shared-content session object that includes information associated with the shared-content session, the information associated with the shared-content session including an application indicator that is based on an application associated with content in the shared-content session provides feedback to a user of the computer system about an application that is used to share content in the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, an icon of the application in the application indicator is overlaid on a representation (e.g., avatar) of a group of users associated with the shared-content session. In some embodiments, in accordance with a determination that a first application is associated with content in the shared-content session, the shared-content session object includes a first application indicator (e.g., with a first appearance; that indicates the first application); and in accordance with a determination that a second application, different from the first application, is associated with content in the shared-content session, the shared-content session object includes a second application indicator (e.g., that indicates the second application) that is different from the first application indicator (or the first application indicator with a second appearance that is different from the first appearance).
In some embodiments (e.g., while the computer system is connected to the shared-content session), the computer system (e.g., 6000B) displays a shared-content session object (e.g., 6015A or 6015B) that includes one or more selectable shared-content session function options (e.g., 6015A-1, 6015B-1, 6015A-4, 6015B-4, 6015A-5, 6015B-5, 6015A-6, 6015B-6, 6015A-7, 6015B-7, 6015A-8, 6015B-8, 6015A-9, and/or 6015B-9) that, when selected, cause the computer system (e.g., 6000B) to perform a respective function associated with the shared-content session (e.g., and, optionally, information associated with the shared-content session), the one or more shared-content session function options including a first shared-content session function option (e.g., 6015A-1 or 6015B-1). The computer system (e.g., 6000B) detects an input (e.g., 6036) corresponding to selection of the first shared-content session function option. In response to detecting the input corresponding to selection of the first shared-content session function option, the computer system (e.g., 6000B) displays a user status interface (e.g., 6038A 6040A, and/or 6042A) (e.g., or a user-interface object; a group card) that includes a status (e.g., 6046), with respect to the shared-content session (e.g., active, inactive, joined, not joined, sharing, and/or not sharing), of one or more users associated with the shared-content session. Displaying a user status interface that includes a status, with respect to the shared-content session, of one or more users associated with the shared-content session provides feedback to a user of the computer system about the status of one or more users associated with the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000B) displays a user interface (e.g., 6004A or 6004B) of a messaging application. In some embodiments, the user interface of the messaging application includes a plurality of messages (e.g., 6004A-1 or 6004B-1) between users associated with the shared-content session (e.g., in a conversation region (e.g., 6004A-3 or 6004B-3) of the user interface of the messaging application). In accordance with a determination that the shared-content session is available (e.g., the shared-content session is active; the shared-content session can be initiated), the computer system (e.g., 6000B) displays a visual indication (e.g., 6010A, 6010B, or 6024) (e.g., a message that the shared-content session is available) in the user interface of the messaging application (e.g., in the conversation region of the user interface of the messaging application) that includes information associated with the shared-content session (e.g., a representation (e.g., name, initial(s), and/or avatar) of a user that initiated the shared-content session, a number of participants in the shared-content session, representation(s) of participants in the shared-content session, and/or content in the shared-content session). Displaying a visual indication in the user interface of the messaging application that includes information associated with the shared-content session, in accordance with a determination that the shared-content session is available, provides feedback to a user of the computer system of the information associated with the shared-content session, provides additional controls for joining the shared-content session without cluttering the user interface with additional displayed controls until an input is received, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the visual indication includes a selectable option (e.g., a link, affordance, and/or button) that, when selected, causes the computer system to activate and/or join the shared-content session.
In some embodiments, the computer system (e.g., 6000B) displays a selectable camera option (e.g., 6015A-7, 6015B-7, 14015A-7, or 14045B-7) (e.g., in the shared-content session object). The computer system (e.g., 6000B) detects an input corresponding to selection of the selectable camera option. In response to detecting the input corresponding to selection of the selectable camera option, the computer system (e.g., 6000B) displays one or more selectable camera setting options (e.g., 14068) that, when selected, cause the computer system (e.g., 6000B) to operate a camera according to the selected camera setting option (e.g., causing the computer system to output a visual representation of a field-of-view of one or more cameras). Displaying one or more selectable camera setting options in response to detecting the input corresponding to selection of the selectable camera option provides additional controls for causing the computer system to operate a camera according to the selected camera setting option without cluttering the user interface with additional displayed controls until an input is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the camera setting options include one or more of “camera on,” “camera off,” and/or one or more options to select a particular camera (e.g., a front-facing camera, a rear-facing camera). In some embodiments, one or more of the camera setting options can be selected to output a visual representation of a field-of-view of particular camera (e.g., a front-facing camera, and/or a rear-facing camera). In some embodiments, one or more of the camera setting options can be selected to apply a visual effect to a representation of a field-of-view of one or more cameras, and/or to enable/disable a setting for adjusting a field-of-view of one or more cameras.
In some embodiments, the computer system (e.g., 6000B; 14000) displays a selectable microphone option (e.g., 6015A-6 or 6015B-6; 14045A-6 or 14045B-6 displayed by device 14000A or 14000B) (e.g., in shared-content session object). The computer system (e.g., 6000B) detects an input (e.g., 14046) corresponding to selection of the selectable microphone option. In response to detecting the input corresponding to selection of the selectable microphone option, the computer system displays one or more selectable microphone setting options (e.g., 14064) that, when selected, cause the computer system to operate a microphone according to the selected microphone setting option (e.g., outputting audio corresponding to audio recorded by one or more microphones) (e.g., enabling or disabling a microphone). Displaying one or more selectable microphone setting options in response to detecting the input corresponding to selection of the selectable microphone option provides additional controls for causing the computer system to operate a microphone according to the selected microphone setting option without cluttering the user interface with additional displayed controls until an input is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000B) displays a user interface (e.g., 6004A, 6004B, 6170A, or 6170B) of a communication application that provides a protocol to communicate with an external computer system (e.g., 6000A) (e.g., a messaging application, an audio and/or video communication application). While displaying the user interface of the communication application (e.g., during an ongoing real-time (e.g., audio and/or video) communication session; in a user interface of a messaging application that includes a plurality of messages between participants of a messaging conversation; in a user interface in which one or more participants have been selected), the computer system (e.g., 6000B) detects an input (e.g., 6008 or 6186) corresponding to a request to initiate a new shared-content session. In some embodiments, the input corresponding to the request to initiate a new shared-content session includes selection of a shared-content session option (e.g., 6006-3, 6180A-1, or 6081B-1) (e.g., an icon, affordance, and/or button) provided by (e.g., displayed in) the communication application. In response to detecting the input corresponding to the request to initiate a new shared-content session, the computer system (e.g., 6000B) initiates the new shared-content session (e.g.,
Note that details of the processes described above with respect to method 900 (e.g.,
As described below, method 1000 provides an intuitive way for providing user interfaces in a shared-content session. The method reduces the cognitive burden on a user for accessing user interfaces in a shared-content session, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to access user interfaces in a shared-content session faster and more efficiently conserves power and increases the time between battery charges.
The computer system (e.g., 6000A) receives (1002), via the one or more input devices (e.g., 6001A, 6002A, and/or 6003A), an input (e.g., 6126, 6136, 6190, 6194, or 6216) (e.g., a selection of an application icon) corresponding to a request to display a first user interface (e.g., 6198, 6130, or 6140) of a first application (e.g., the application corresponding to 6128 or 6192) (e.g., a request to open/launch an application (e.g., at one or more external computer systems)).
In response to receiving (1004) the input: in accordance with a determination that a first set of criteria is met, wherein the first set of criteria is met when a shared-content session between the computer system (e.g., 6000A) and an external computer system (e.g., 6000B) (e.g., one or more external computer systems) is active, and the first application is capable of playing content that can be added to the shared-content session (e.g.,
In some embodiments, the indication that the first application is capable of playing content that can be added to the shared-content session includes a graphical object (e.g., 6132, 6210) (e.g., a notification, a banner) that is overlaid on the user interface for the first application (e.g., and that is not output when the first set of criteria is not met) (e.g., and that, optionally, is not part of the user interface for the first application). Outputting the indication that the first application is capable of playing content that can be added to the shared-content session including a graphical object that is overlaid on the user interface for the first application provides feedback to a user of the computer system that the first application is capable of playing content that can be added to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the indication that the first application is capable of playing content that can be added to the shared-content session includes an appearance of a selectable playback option (e.g., the appearance of 6144 as shown in
In some embodiments, the indication that the first application is capable of playing content that can be added to the shared-content session is included (e.g., embedded) in the user interface for the first application (e.g., 6132). Outputting the indication that the first application is capable of playing content that can be added to the shared-content session included in the user interface for the first application provides feedback to a user of the computer system that the first application is capable of playing content that can be added to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000A) displays, concurrently with the indication that the first application is capable of playing content that can be added to the shared-content session, a description (e.g., 6142 and/or 6146) (e.g., text, symbol, and/or badge) of first media (e.g., one or more media items, videos, songs, movies, and/or episodes of a show) capable of being played by the first application that can be added to the shared-content session. Displaying a description of first media capable of being played by the application that can be added to the shared-content session concurrently with the indication that the first application is capable of playing content that can be added to the shared-content session provides feedback to a user of the computer system that the first media is capable of being added to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, while the computer system (e.g., 6000A) (e.g., and the external computer system) is outputting (e.g., concurrently outputting) second media in the shared-content session, the computer system (e.g., 6000A) receives (e.g., detecting) an indication that a request (e.g., 6246, 6258, 6278, 6284, 6336, 6362, 6364, or 6444) to change output of the second media has occurred (e.g., a user of an external computer system has made a request to pause, play, fast forward, and/or rewind the media, or has made a request to output different (e.g., next, previous) media)); in some embodiments, the computer system receives an indication that a request to change output of the first media has occurred by receiving instruction(s) or command(s) to change output of the first media. In response to detecting that a request to change output of the second media has occurred, the computer system (e.g., 6000A) outputs an output change notification (e.g., 6248, 6250, 6260, 6262, 6270, 6272, 6280, 6282, 6286, 6288, 6290, 6292, 6344, 6368, 6370, 6450, or 6452) of the request to change output of the second media (e.g., a notification with an appearance (e.g., text) that is based on the request to change output of the second media; and/or a notification that indicates an action (e.g., fast forward, rewind) associated with the request). Outputting an output change notification of the request to change output of the second media in response to detecting that a request to change output of the second media has occurred provides feedback to a user of the computer system that the request to change output of the second media was received at the computer system. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the request (e.g., 6258, 6264, or 6284) to change output of the second media is made by a participant of the shared-content session that selected the second media to be output during the shared-content session (or a participant that added the second media to the shared-content session).
In some embodiments, the request (e.g., 6246 or 6334) to change output of the second media is made by a participant of the shared-content session other than a participant of the shared-content session that selected the second media to be output during the shared-content session (or a participant that added the second media to the shared-content session).
In some embodiments, the computer system (e.g., 6000A) receives an indication that media has been added (e.g., via input 6432) to a queue (e.g., 6442) of media (e.g., a song list, a playlist, a queue of movies, episodes, and/or songs) that are to be added to the shared-content session (e.g., added sequentially to the shared-content session). In response to receiving the indication that media has been added to a queue of media that are to be added to the shared-content session, the computer system (e.g., 6000A) outputs a media-added notification (e.g., 6440 or 6436) (e.g., displaying a notification and/or outputting an audible notification) that media has been added to a queue of media that are to be added to the shared-content session. Outputting a media-added notification that media has been added to a queue of media that are to be added to the shared-content session in response to receiving the indication that media has been added to a queue of media provides feedback to a user of the computer system that media has been added to the queue of media that are to be added to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000A) receives an indication that an action has been taken (e.g., via input 6246, 6258, 6278, 6284, 6336, 6362, 6364, and/or 6444) with respect to media in the shared-content session (e.g., a request to change media output (e.g., playback) and/or a request to change a media queue). In response to receiving the indication that an action has been taken with respect to media in the shared-content session, the computer system (e.g., 6000A) displays a media action notification (e.g., 6248, 6250, 6260, 6262, 6270, 6272, 6280, 6282, 6286, 6288, 6290, 6292, 6344, 6368, 6370, 6450, or 6452) (e.g., based on the action). In some embodiments, the computer system (e.g., 6000A) detects an input (e.g., 6274 or 6438) corresponding to selection of the media action notification. In response to detecting the input corresponding to selection of the media action notification: in accordance with a determination that the media action notification is a notification of a first type (e.g., 6272) (e.g., a notification of a request to change playback of the media), the computer system (e.g., 6000A) initiates a first action (e.g., display content as shown on 6000B in
In some embodiments, the notification of the first type corresponds to a notification (e.g., 6272) of a request to change output (e.g., playback) of the media in the shared-content session (e.g., the action that was taken with respect to media of the shared-content session that triggered the notification was a request to change output of the media of the shared-content session), and the first action includes outputting (e.g., display content as shown on 6000B in
In some embodiments, the notification of the second type corresponds to a notification (e.g., 6436) of a request to change a queue of media to be added to the shared-content session (e.g., the action that was taken with respect to media of the shared-content session that triggered the notification was a request to change a queue of media to be added to the shared-content session), and the second action includes displaying the queue (e.g., 6434B) of media to be added to the shared-content session.
In some embodiments, in response to detecting the input (e.g., 6252) corresponding to selection of the media action notification (e.g., 6248): in accordance with a determination that the computer system (e.g., 6000A) is displaying the media in the shared-content session in a full screen mode (e.g., as shown on 6000A in
In some embodiments, in response to detecting the input (e.g., 6266) corresponding to selection of the media action notification (e.g., 6262): in accordance with a determination that the computer system (e.g., 6000A) is not outputting the media of the shared-content session in a full screen mode (e.g., as shown on 6000B in
In some embodiments, the computer system (e.g., 6000A) detects an input (e.g., 6218 or 6224) corresponding to a request to play first content of the first application that can be added to the shared-content session (e.g., selection of a play button, selection of a content item). In response to detecting the input corresponding to the request to play the first content of the first application that can be added to the shared-content session, the computer system (e.g., 6000A) plays the first content in the first application and adds the first content to the shared-content session without sharing a screen of the computer system (e.g., 6000A) in the shared-content session (e.g., as shown in
In some embodiments, the computer system (e.g., 6000A) detects an input (e.g., 6224 or 6298) corresponding to a request to play second content of the first application. In response to detecting the input corresponding to the request to play the second content of the first application: in accordance with a determination that the second content of the first application can be added to the shared-content session, playing the second content in the first application and adding the second content of the first application to the shared-content session (e.g., as shown in
In some embodiments, the computer system (e.g., 6000A) initiates (e.g., via input 6008 or 6026) connection to (e.g., joining and/or starting) the shared-content session, including opening (e.g., automatically, without further input) an audio channel (e.g., represented by 6015A-6 and/or 6015B-6 being emphasized) that adds audio detected by the one or more input devices (e.g., 6001A, 6002A, and/or 6003A) (e.g., a microphone) to the shared-content session between the computer system (e.g., 6000A) and the external computer system (e.g., 6000B) (e.g., the computer system opens the audio channel by default when the computer system connects to (e.g., initiates and/or joins) the shared-content session). Opening an audio channel that adds audio detected by the one or more input devices to the shared-content session when initiating connection to the shared-content session reduces the number of inputs at the computer system, by reducing inputs to open the audio channel. Reducing the number of inputs at the computer system enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000A) displays a user interface (e.g., 6004A, 6004B, 6170A, or 6170B) of a communication application that provides a protocol to communicate with an external computer system (e.g., 6000B) (e.g., a messaging application, a video communication application). While displaying the user interface of the communication application (e.g., during an ongoing real-time (e.g., audio and/or video) communication session; in a user interface of a messaging application that includes a plurality of messages between participants of a messaging conversation; in a user interface in which one or more participants have been selected), the computer system (e.g., 6000A) detects an input (e.g., 6008 or 6186) corresponding to a request to initiate a new shared-content session. In some embodiments, the input corresponding to the request to initiate a new shared-content session includes selection of a shared-content session option (e.g., 6006-3, 6180A-1, or 6081B-1) (e.g., an icon, affordance, and/or button) provided by (e.g., displayed in) the communication application. In response to detecting the input corresponding to the request to initiate a new shared-content session, the computer system (e.g., 6000A) initiates the new shared-content session (e.g.,
In some embodiments, in response to receiving the input (e.g., 6190 or 6216) corresponding to a request to display the first user interface of the first application and in accordance with a determination that the first set of criteria is met, the computer system (e.g., 6000A) concurrently displays a glyph (e.g., 6132) and a representation (e.g., 6214 or 6142) of content (e.g., media) that can be played by the first application and added to the shared-content session. Concurrently displaying a glyph and a representation of content that can be played by the first application and added to the shared-content session in response to receiving the input corresponding to a request to display the first interface of the first application and in accordance with a determination that the first set of criteria is met provides feedback to a user of the computer system that the content is capable of being added to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the glyph is displayed on or near the representation of respective content (e.g., to indicate that the respective content can be added to the shared-content session). In some embodiments, the glyph is displayed for content that can be added to the shared-content session but which a user is not currently entitled to play (e.g., because the user has not rented, purchased, or subscribed to a service that provides the content).
In some embodiments, while outputting the first user interface of the first application, the computer system (e.g., 6000A) detects an input (e.g., 6204) corresponding to a request to play third content. In response to detecting the input corresponding to the request to play the third content: in accordance with a determination that the third content is not available to be added to the shared-content session (and, optionally, in accordance with a determination that the computer system is connected to a shared-content session), the computer system (e.g., 6000A) outputs (e.g., displaying) a notification (e.g., 6206) (e.g., an error notification, a banner, a pop-up notification, an audible notification, and/or a tactile notification) indicating that the third content is not available to be added to the shared-content session (e.g., and, optionally, outputting the respective content). Outputting a notification indicating that the third content is not available to be added to the shared-content session in accordance with a determination that the third content is not available to be added to the shared-content session provides feedback to a user of the computer system that the third content is not available to be added to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, in response to detecting the input corresponding to the request to play the third content and in accordance with a determination that the computer system is not connected to a shared-content session, outputting (e.g., displaying, playing) the third content without outputting the notification indicating that the third content is not available to be added to the shared-content session.
In some embodiments, in accordance with a determination that the computer system (e.g., 6000A) (or a user of the computer system) and one or more external computer systems (e.g., 6000B) associated with the shared-content session (or users associated with the shared-content session (e.g., participants of the shared-content system)) are entitled to (e.g., can access, have purchased, have rented, and/or have access to a subscription that provides access to) fourth content (e.g., in the first application), the computer system (e.g., 6000A) displays (e.g., in the first user interface of the first application) a recommended content indicator (e.g., 6132) (e.g., that is visually associated with a representation of the fourth content) that indicates that the computer system (e.g., 6000A) and one or more external computer systems (e.g., 6000B) associated with the shared-content session are entitled to the fourth content.
In some embodiments, the computer system (e.g., 6000A) detects a request (e.g., 6218) to output fifth content (e.g., in the first application). In response to detecting the request to output (e.g., display, play) the fifth content: in accordance with a determination that the computer system (e.g., 6000A) is connected to an active shared-content session, the computer system (e.g., 6000A) outputs a set of selectable play options (e.g., 6220) (e.g., a prompt) that includes a first selectable play option (e.g., 6220-2) that, when selected, plays the fifth content on the computer system (e.g., 6000A) without adding the fifth content to the shared-content session and a second selectable play option (e.g., 6220-1) that, when selected, plays the fifth content on the computer system (e.g., 6000A) and adds the fifth content to the shared-content session. Outputting a set of selectable play options that includes the first selectable play option and the second selectable play option provides additional controls for playing content on the computer system with or without adding the content to the shared-content session without cluttering the user interface with additional displayed controls until an input is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, in response to the request to output the fifth content and in accordance with a determination that the computer system is not connected to an active shared-content session, the computer system forgoes output of the set of selectable play options.
In some embodiments, the computer system (e.g., 6000A) detects a first option selection input (e.g., 6222 or 6224) corresponding to selection of one of the first selectable play option (e.g., 6220-2) and the second selectable play option (e.g., 6220-1). In response to detecting the first option selection input, the computer system (e.g., 6000A) plays the fifth content (e.g., either with or without adding the fifth content to the shared-content session based on whether the first selectable play option or the second selectable play option were selected). After playing the fifth content, the computer system (e.g., 6000A) detects a request to output sixth content (e.g., after detecting the first option selection input). In response to detecting the request to output (e.g., display, play) the sixth content: in accordance with a determination that a first set of play criteria is satisfied, where the first set of play criteria includes a criterion that is satisfied when the first option selection input (e.g., 6222 or 6224) includes selection of the first selectable play option (e.g., 6220-2), the computer system plays the sixth content on the computer system (e.g., 6000A) without adding the sixth content to the shared-content session; and in accordance with a determination that a second set of play criteria is satisfied, where the second set of play criteria includes a criterion that is satisfied when the first option selection input includes selection of the second selectable play option (e.g., 6220-1), the computer system plays the sixth content on the computer system (e.g., 6000A) and adds the sixth content to the shared-content session. Playing the sixth content on the computer system with or without adding the sixth content to the shared-content session in accordance with a determination of whether the first or second set of play criteria is satisfied reduces the number of inputs at the computer system by eliminating the need to solicit additional input from the user about whether or not to add the sixth content to the shared-content session. Reducing the number of inputs at the computer system enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the computer system remembers or stores the play option selected by the first option selection input and applies it to subsequent requests to output content (e.g., the response to the request to output the sixth content is based on the play option selected previously for the fifth content).
In some embodiments, the first set of play criteria includes a criterion that is satisfied if the request to output the sixth content corresponds to a request to output the sixth content in the first application (e.g., represented by 6128), and the second set of play criteria includes a criterion that is satisfied if the request to output sixth content corresponds to a request to output the sixth content in the first application (e.g., represented by 6128). In some embodiments, in accordance with a determination that the request to output sixth content corresponds to a request to output the sixth content in a second application that is different from the first application, the computer system outputs (e.g., displays) a prompt (e.g., a set of selectable play options that includes a first selectable play option to play the sixth content on the computer system without adding the sixth content to the shared-content session and a second selectable play option to play the sixth content on the computer system and add the sixth content to the shared-content session). In some embodiments, the computer system remembers or stores a play option selected in a particular application and applies it to subsequent requests to output content in the same application, but not for requests to play content in other applications (e.g., the response to the request to output the sixth content is based on the play option selected previously for the fifth content if the sixth content is requested to be played in the same application as the fifth content).
In some embodiments, the first set of play criteria includes a criterion that is satisfied if the request to output the sixth content occurs in the same shared-content session (e.g., a shared-content session that has not been concurrently disconnected for all participants (e.g., computer systems) of the shared-content session; a shared-content session that has maintained at least one connected participant since being initiated; and/or a shared-content session that has not been ended for all participants) as the request to output the fifth content, and the second set of play criteria includes a criterion that is satisfied if the request to output the sixth content occurs in the same shared-content session as the request to output the fifth content. In some embodiments, a shared-content session persists until all participants of the shared-content session are concurrently disconnected from the shared-content session (e.g., the shared-content session terminates when there are no participants). In some embodiments, a participant of the shared-content session can leave and rejoin the same shared-content session (e.g., as long as the shared-content session has maintained at least one participant in the session). In some embodiments, a shared-content session is considered a new session when the shared-content session is initiated for a group of potential participants and a previously-initiated shared-content session is not ongoing for the same group of potential participants. In some embodiments, in accordance with a determination that the request to output the sixth content does not occur in the same shared-content session as the request to output the fifth content, the computer system outputs (e.g., displays) a prompt (e.g., a set of selectable play options that includes a first selectable play option to play the sixth content on the computer system without adding the sixth content to the shared-content session and a second selectable play option to play the sixth content on the computer system and add the sixth content to the shared-content session). In some embodiments, the computer system remembers or stores a play option selected in a particular shared-content session and applies it to subsequent requests to output content in the same shared-content session, but not for requests to play content in other shared-content session (e.g., the response to the request to output the sixth content is based on the play option selected previously for the fifth content if the sixth content is requested to be played in the same shared-content session as the fifth content).
In some embodiments, the request to output the sixth content corresponds to a request to output the sixth content in a second application (e.g., a single application; a plurality of applications; or all applications) that is different from the first application (e.g., the option selected for playing the fifth content in the first application is applied to requests to play content in other applications (e.g., one or more applications; all applications); the first set of play criteria and the second set of play criteria do not depend on the application in which the sixth content is requested to be played). In some embodiments, the computer system remembers or stores a play option selected in a particular application and applies it to subsequent requests to output content for all applications (e.g., the response to the request to output the sixth content is based on the play option selected previously for the fifth content regardless of the application associated with the sixth content).
In some embodiments, the request to output the sixth content occurs in a different shared-content session from the request to output the fifth content (e.g., the option selected for playing the fifth content in the first application is applied to requests to play content in other shared-content sessions; the first set of play criteria and the second set of play criteria do not depend on the shared-content session in which the sixth content is requested to be add or played). In some embodiments, the computer system remembers or stores a play option selected in a particular shared-content session and applies it to subsequent requests to output content for all shared-content sessions (e.g., the response to the request to output the sixth content is based on the play option selected previously for the fifth content regardless of the shared-content session in which the request to output the sixth content occurred). In some embodiments, after detecting the first option selection input, the computer system detects a request to launch a third application (e.g., the first application, an application different from the first application); and in response to detecting the request to launch the third application, launching the third application and displaying (e.g., in the third application) a play setting indicator (e.g., a notification) that indicates that a play option selected by the first option selection input will be applied in response to a request to output content in the third application. Launching the third application and displaying the play setting indicator provides feedback to a user of the computer system that a play option selected by the first option selection input will be applied in response to a request to output content in the third application. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000A) detects a second option selection input corresponding to selection of an option of the set of selectable play options (e.g., 6220) (e.g., the first selectable play option, a “play for me” option, and/or a “cancel” option). After detecting the second option selection input, the computer system (e.g., 6000A) detects a request to output seventh content (e.g., after detecting the second option selection input). In response to detecting the request to output (e.g., display, play) the seventh content: in accordance with a determination that the second option selection input corresponds to selection of an option (e.g., 6220-2) not to add the fifth content to the shared-content session, the computer system (e.g., 6000A) outputs the set of selectable play options (e.g., 6220). In some embodiments, in response to detecting the request to output the seventh content, and in accordance with a determination that the second option selection input corresponds to an option to add the fifth content to the shared-content session, the computer system forgoes outputting the set of selectable play options (e.g., the computer system adds the seventh content to the shared-content session without displaying the set of selectable play options).
In some embodiments, the computer system (e.g., 6000A) detects a third option selection input corresponding to selection of an option of the set of selectable play options (e.g., 6220). After detecting the third option selection input, the computer system (e.g., 6000A) detects a request to output eighth content (e.g., after detecting the third option selection input). In response to detecting the request to output (e.g., display, play) the eighth content: in accordance with a determination that the third option selection input corresponds to an option (e.g., 6220-1) to add the fifth content to the shared-content session (e.g., the second selectable play option), the computer system (e.g., 6000A) forgoes outputting the set of selectable play options (e.g., 6220). Forgoing outputting the set of selectable play options in accordance with a determination that the third option selection input corresponds to an option to add the fifth content to the shared-content session reduces the number of inputs at the computer system by eliminating the need to solicit input from the user for selecting the set of selectable play options. Reducing the number of inputs at the computer system enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the device adds the eighth content to the shared-content session without outputting the set of selectable play options.
In some embodiments, outputting an indication that the first application is capable of playing content that can be added to the shared-content session includes outputting an indication (e.g., a notification) of whether the content will be added to the shared-content session (e.g., as discussed above with respect to
In some embodiments, while the computer system (e.g., 6000A) (e.g., and the external computer system) is outputting (e.g., concurrently outputting) third media that is in the shared-content session, the computer system (e.g., 6000A) receives (e.g., detecting) an indication that a request (e.g., 6284) to move to a different position (e.g., elapsed playback time) of the third media has occurred (e.g., a user of the computer system or an external computer system has made a request to move to a different position in the third media (e.g., by scrubbing, selecting, and/or moving an interactive object (e.g., a scrubber bar))). In response to detecting that a request to move to a different position of the third media has occurred: in accordance with a determination that the request to move to a different position of the third media occurred at the computer system (e.g., 6000A), the computer system displays a first media-change notification (e.g., 6286) (e.g., a notification that the position of the third media has moved; in some embodiments, the first media-change notification is output upon completion (e.g., liftoff) of the request to move to the different position of the third media) (e.g., while a different media-change notification (e.g., a notification that a user of the computer system changed a playback state of the third media (e.g., the third media has been paused, resumed, and/or moved)) is output at the external computer system); and in accordance with a determination that the request to move to a different position of the third media occurred at an external computer system (e.g., 6000B), the computer system (e.g., 6000A) displays a second media-change notification (e.g., 6288) that is different from the first media-change notification (e.g., a notification that indicates that the third media has been paused, resumed, and/or moved) (e.g., while a different media-change notification (e.g., a notification that the position of the third media has moved) is output at the external computer system). Displaying the first media-change notification or the second media-change notification in accordance with a determination of whether the request to move to a different position of the third media occurred at the computer system or at an external computer system provides feedback to a user of the computer system about whether the request to move to a different position of the third media occurred at the computer system or at an external computer system. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, while the computer system (e.g., 6000B) (e.g., and the external computer system) is outputting (e.g., concurrently outputting) fourth media that is in the shared-content session, the computer system (e.g., 6000B) receives (e.g., detecting) an indication that a request (e.g., 6284) to move to a different position of the fourth media has occurred (e.g., a user of the computer system or an external computer system has made a request to move to a different position in the fourth media (e.g., by scrubbing, selecting, and/or moving an interactive object (e.g., a scrubber bar)). In response to receiving the indication (e.g., detecting) that a request to move to a different position of the fourth media has occurred, the computer system (e.g., 6000B) pauses output of the fourth media (e.g., output is paused at 6000B in
In some embodiments, while the computer system (e.g., 6000A) is connected to the shared-content session, the computer system (e.g., 6000A) detects an input (e.g., 6350) corresponding to a request to disconnect the computer system (e.g., 6000A) from the shared-content session. In response to detecting the input corresponding to a request to disconnect the computer system (e.g., 6000A) from the shared-content session, the computer system (e.g., 6000A) displays a set of disconnect options (e.g., 6356, 6358, and 6360) including a first selectable disconnect option (e.g., 6358) that, when selected, causes the computer system (e.g., 6000A) to disconnect from the shared-content session without ending the shared-content session and a second selectable disconnect option (e.g., 6356) that, when selected, ends the shared-content session (e.g., causes all computer systems to disconnect from the shared-content session). Displaying a set of disconnect options including a first selectable disconnect option and a second selectable disconnect option in response to detecting the input corresponding to a request to disconnect the computer system from the shared-content session provides additional controls for disconnecting from the shared-content session without cluttering the user interface with additional displayed controls until an input is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, while ninth content is in the shared-content session, the computer system (e.g., 6000A) detects an input (e.g., 6326) corresponding to a request to add tenth content (e.g., new content, content different from the ninth content) to the shared-content session (e.g., to share the tenth content via the shared-content session). In response to detecting the input (e.g., 6326) corresponding to a request to add the tenth content to the shared-content session, the computer system (e.g., 6000A) outputs a set of add-content options (e.g., 6334 and 6336) including a first selectable add-content option (e.g., 6334) that, when selected, causes the tenth content to replace the ninth content in the shared-content session and a second selectable add-content option (e.g., 6336) that, when selected, cancels the request to add the tenth content to the shared-content session. Outputting a set of add-content options including the first selectable add-content option and the second selectable add-content option provides additional controls for adding content to the shared-content session without cluttering the user interface with additional displayed controls until an input is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the set of add-content options includes a third selectable add-content option that, when selected, causes the tenth content to be added to a media queue. In some embodiments, the computer system outputs the set of add-content options when either the computer system or an external computer system (e.g., regardless of what computer system or participant) initiated sharing of the ninth content (e.g., added the ninth content to the shared-content session).
In some embodiments, while the computer system (e.g., 6000A) is connected to the shared-content session, the computer system (e.g., 6000A) detects an input (e.g., 6190 or 6194) corresponding to a request to open a fourth application. In response to detecting the input corresponding to a request to open the fourth application (and, optionally, in accordance with a determination that a shared-content session is active), the computer system (e.g., 6000A) outputs (e.g., displaying, initiating output of) a shared-content session indicator (e.g., 6200, 6210, or 6132) (e.g., a notification, a banner, and/or a pop-up window) that indicates that the shared-content session is active (e.g., that was not being output prior to detecting the input corresponding to the request to open the application). Outputting a shared-content session indicator in response to detecting the input corresponding to a request to open the fourth application provides feedback to a user of the computer system that the shared-content session is active. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the computer system outputs the indication whether or not the application is capable of and/or configured to add content to the shared-content session. In some embodiments, the computer system outputs the indication whether or not the computer system receives (or has received) a request to add content to the shared-content session.
In some embodiments, the shared-content session indicator includes (e.g., is) a notification (e.g., 6200) that content accessible via the fourth application (e.g., content provided by the fourth application) is not available to be added to the shared-content session (or is not available to be added to the shared-content as synchronized content even though it could be added as part of a screen sharing operation) (e.g., a message stating that content is not available to be added to the shared-content session). Outputting the shared-content session indicator including a notification that content accessible via the fourth application is not available to be added to the shared-content session provides feedback to a user of the computer system that the content is not available to be added to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the shared-content session indicator includes a notification that content output by the fourth application is not available to be added to the shared-content session in accordance with a determination that content output by the fourth application is not available to be added to the shared-content session (e.g., sharable content is not available).
In some embodiments, the shared-content session indicator includes (e.g., is) a notification (e.g., 6210) that content accessible via the fourth application (e.g., content provided by the fourth application) is available to be added to the shared-content session (e.g., a message stating that content is available to be added to the shared-content session). Outputting the shared-content session indicator including a notification that content accessible via the fourth application is available to be added to the shared-content session provides feedback to a user of the computer system that the content is available to be added to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the shared-content session indicator includes the notification when some of the content accessible via the fourth application is available to be added to the shared-content session and some of the content accessible via the fourth application is not available to be added to the shared-content session. In some embodiments, the notification indicates that content is available to be added to the shared-content session, but that the content is not currently being shared with the shared-content session (e.g., sharing is currently disabled). In some embodiments, the shared-content session indicator includes a notification that content output by the fourth application is available to be added to the shared-content session in accordance with a determination that content output by the fourth application is available to be added to the shared-content session (e.g., sharable content is available).
In some embodiments, the shared-content session indicator includes (e.g., is) a notification (e.g., 6210 or 6132) that content accessible via the fourth application (e.g., content provided by the fourth application) will be added to the shared-content session if the content is played in the fourth application while the shared-content session is active (e.g., a message stating that content will be added to the shared-content session). Outputting the shared-content session indicator including a notification that content accessible via the fourth application will be added to the shared-content session if the content is played in the fourth application while the shared-content session is active provides feedback to a user of the computer system that the content will be added to the shared-content session if the content is played in the fourth application while the shared-content session is active. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the shared-content session indicator includes a notification that content output by the fourth application will be added to the shared-content session in accordance with a determination that content output by the fourth application will be added to the shared-content session (e.g., sharable content is available and sharing is enabled).
In some embodiments, the computer system (e.g., 6000B) receives a request (e.g., 6682 or 6696) to output eleventh content at the computer system (e.g., while the computer system is not outputting content that is currently in the shared-content session but while there is an ongoing shared-content session that the computer system is participating in); and in response to receiving the request to output the eleventh content: in accordance with a determination that the computer system is participating in a shared-content session in which the eleventh content is currently in the shared-content session (e.g., the eleventh content is synchronized content (e.g., 6150A in
In some embodiments, in response to receiving the request to output the eleventh content and in accordance with a determination that the computer system is not participating in a shared-content session, the computer system outputs (e.g., plays back or resumes playback of) the eleventh content at a different location (e.g., time location) in the eleventh content (e.g., the synchronized location) (e.g., a beginning of the content or a location at which a user of the computer system most recently stopped watching the content). In some embodiments, the process for outputting the eleventh content includes displaying one or more selectable options (e.g., 6686-1, 6686-2, and/or 6686-3) that, when selected, causes the computer system to output the eleventh content without adding the eleventh content to the shared-content session or to output the eleventh content and add the eleventh content to the shared-content session.
In some embodiments, while content in the shared-content session is not being output by the computer system (e.g., 6000A) (e.g., content is being shared in the shared-content system but the user of computer system is not watching the shared content (e.g., has closed the content) and is, optionally, still participating in some parts of the shared-content session such as a voice and/or video chat associated with the shared-content session): the computer system detects an input (e.g., 6306) corresponding to a request to display information and/or controls of the shared-content session (e.g., 6015A); and in response to detecting the input corresponding to a request to display information and/or controls of the shared-content session, concurrently displays: a second shared-content session object (e.g., 6015A) that includes information associated with the shared-content session and/or one or more selectable options that, when selected, cause the computer system to perform a respective function associated with the shared-content session; and a notification (e.g., 6312) (e.g., in the shared-content session object or below the shared content session object; a persistent notification) that includes an indication of the content in the shared-content session that is not being output by the computer system. Concurrently displaying the shared-content session object and the notification that includes an indication of the content in the shared-content session that is not being output by the computer system in response to detecting the input corresponding to a request to display information and/or controls of the shared-content session automatically and efficiently informs or reminds the user of content in the shared-content session that is available to output, which provides improved visual feedback to the user.
In some embodiments, in response to detecting input (e.g., 6310) corresponding to selection of the notification (e.g., 6312), the computer system (e.g., 6000A) outputs the content that is in the shared-content session but was not being output by the computer system (e.g., 6150A in
Note that details of the processes described above with respect to method 1000 (e.g.,
As described below, method 1100 provides an intuitive way for outputting content in a shared-content session. The method reduces the cognitive burden on a user for outputting content in a shared-content session, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to output content in a shared-content session faster and more efficiently conserves power and increases the time between battery charges.
The computer system (e.g., 6000B) receives (1102) (in some embodiments, while displaying, via an output generation component of the one or more output generation components, a first user interface (e.g., a system user interface (e.g., a “home” screen); a user interface for a first application operating at the computer system (e.g., a web browser application; a music application))) (in some embodiments, while a shared-content session between the computer system and an external computer system is active) first data associated with a request (e.g., 6224, 6376 or 6398) (e.g., initiated by the external computer system) to add first content (e.g., “First Episode”) (e.g., synchronized content and/or screen-share content) to a shared-content session between an external computer system (e.g., 6000A) and the computer system (e.g., 6000B).
In response to receiving (1104) 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 are met based on whether the content is available to be output by the computer system (e.g., 6000B) in a predetermined manner (e.g., a set of one or more criteria that must be met in order to output the first content at the computer system (e.g., an application is available (e.g., downloaded/installed) at the computer system to output the first content; a user account associated with the computer system has a valid content subscription to output the first content; an application for outputting the first content is capable of being output in a shared-content session (e.g., the application supports a PiP display format, or a PiP display format is enabled for the application); and/or the first content is supported by a specific type of content sharing (e.g., media sharing; screen sharing) provided by the shared-content session), the computer system (e.g., 6000B) outputs (1106), via an output generation component of the one or more output generation components (e.g., 6001B), the first content (e.g., as shown on 6000B in
In some embodiments, the computer system (e.g., 6000B) outputting the first content includes the computer system (e.g., 6000B) outputting the first content in a window (e.g., 6150B) that is overlaid on a portion of a user interface (e.g., 6170B) that is concurrently output by an output generation component of the one or more output generation components (e.g., 6001B). In some embodiments, the first content is output in the foreground (e.g., in front of all other currently output content (e.g., other windows or user interfaces)).
In some embodiments, the content output criteria are based on whether (e.g., are met if the sufficient conditions are met including a necessary condition that specifies that) an application that is able to output the content (e.g., an application associated with or required to output the first content) is available on (e.g., currently stored on, currently downloaded to) the computer system (e.g.,
In some embodiments, the content output criteria are based on whether (e.g., are met if the sufficient conditions are met including a necessary condition that specifies that) the computer system (e.g., 6000B) can access (e.g., is logged into) a subscription service that provides access to (e.g., required to output, allows access to) the first content (e.g.,
In some embodiments, the content output criteria are based on whether (e.g., are met if the sufficient conditions are met including a necessary condition that specifies that) an application that is used to output the first content is configured to output the first content in the predetermined manner (e.g., in a picture-in-picture window). In some embodiments, the content output criteria are not met if the user is not signed-in to the application and/or the user's subscription is not current or valid.
In some embodiments, the content output criteria are based on a type of content sharing (e.g., a manner in which content is to be shared, screen sharing, audio sharing, video sharing, music sharing, and/or synchronized content sharing). In some embodiments, the content output criteria are met if the first content is requested to be added to the shared-content session according to a first type of content sharing (e.g., screen sharing). In some embodiments, the content output criteria are not met if the first content is requested to be added to the shared-content session according to a second type of content sharing (e.g., synchronized content sharing) that is different from the first type of content sharing.
In some embodiments, outputting the first content includes outputting the first content at a first quality (e.g., resolution, update rate, and/or data rate) when (e.g., in accordance with a determination that) the first content is added to the shared-content session according to a first type of content sharing (e.g., screen sharing), and outputting the first content at a second quality (e.g., lower quality than the first quality, higher quality than the first quality) that is different from the first quality when (e.g., in accordance with a determination that) the first content is added to the shared-content session according to a second type of content sharing (e.g., media (e.g., video, audio, and/or music) sharing, and/or synchronized content sharing). Outputting the first content at a first or second quality when the first content is added to the shared-content session according to a first or second type of content sharing conserves computational resources by conserving bandwidth and decreasing the amount of data that is processed for display and/or transmission at a higher quality. Conserving computational resources enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000B) displays information (e.g., 6386 or 6406) about the content output criteria (e.g., information that indicates to a user what is required to meet the content output criteria, such as, e.g., an application that can output the content or a subscription that allows access to the content). Displaying information about the content output criteria provides feedback to a user of the computer system about the criteria for outputting the first content when it is added to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the computer system displays information about the content output criteria in accordance with a determination that the content output criteria is not met and/or in response to receiving the first data associated with the request to add the first content to the shared-content session.
In some embodiments, the information about the content output criteria includes a selectable download option that, when selected, the computer system (e.g., 6000B) initiates a process (e.g.,
In some embodiments, the information about the content output criteria includes a selectable subscription option that, when selected, the computer system (e.g., 6000B) initiates a process (e.g.,
In some embodiments, the computer system (e.g., 6000B) detects an input (e.g., 6384 or 6404) (e.g., a tap gesture on the notification, and/or a press of a button or other activation command while the notification is in focus) corresponding to selection of the notification (e.g., 6380 or 6400) that the first content has been added to the shared-content session. In response to the computer system (e.g., 6000B) detecting the input corresponding to selection of the notification that the first content has been added to the shared-content session, the computer system (e.g., 6000B) displays a user interface (e.g., 6392 and/or 6412) (e.g., an application store interface) that provides a capability to obtain (e.g., download) an application that is configured to output the first content. Displaying a user interface that provides a capability to obtain an application that is configured to output the first content in response to detecting the input corresponding to selection of the notification that the first content has been added to the shared-content session provides additional control options for obtaining an application that is configured to output the first content without cluttering the user interface with additional displayed controls until the input corresponding to selection of the notification that the first content has been added to the shared-content session is detected, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 6000B) displaying the user interface that provides a capability to obtain an application for outputting the first content includes the computer system (e.g., 6000B) displaying a selectable download option (e.g., 6388 and/or 6394) that, when selected, the computer system (e.g., 6000B) initiates a process for downloading the application that is configured to output the first content. Displaying the user interface that provides a capability to obtain an application for outputting the first content including a selectable download option that, when selected, initiates a process for downloading the application that is configured to output the first content information about the content output criteria including a selectable download option provides additional control options for initiating a process for downloading the application that is configured to output the first content without cluttering the user interface with additional displayed controls until an input is received and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, while the shared-content session is active and after ceasing output (e.g., by the output generation component of the one or more output generation components) of the first content (e.g., via input 6114, 6298, 6350, 6362, 6364, or 6372) (e.g., after the computer system stops outputting the content or leaves the shared-content session), the computer system (e.g., 6000B) detects a request (e.g., 6310) to rejoin the shared-content session (e.g., re-initiate output of the first content; re-join the shared-content session and output the first content). In response to the computer system (e.g., 6000B) detecting the request (e.g., 6026) to rejoin the shared-content session, the computer system (e.g., 6000B) outputs the first content. In some embodiments, a user is required to manually re-initiate output of the first content or re-join the shared-content session.
In some embodiments, the request to output the first content includes selection of an output content option (e.g., 6015A-1 or 6015B-1) (e.g., an icon, button, and/or affordance) included in a shared-content session object (e.g., 6015A or 6015B) that includes information (e.g., 6015A-1, 6015B-1, 6015A-2, and/or 6015A-3) associated with the shared-content session and/or one or more selectable shared-content session function options (e.g., 6015A-1, 6015B-1, 6015A-4, 6015B-4, 6015A-5, 6015B-5, 6015A-6, 6015B-6, 6015A-7, 6015B-7, 6015A-8, 6015B-8, 6015A-9, and/or 6015B-9) that, when selected, cause the computer system (e.g., 6000B) to perform a respective function associated with the shared-content session. In some embodiments, the shared-content session object includes a selectable join option that, when selected, causes the computer system to connect to the shared-content session.
In some embodiments, the computer system (e.g., 6000B) ceases output of the first content (e.g., automatically, without user input) in response to receiving an incoming call (e.g.,
In some embodiments, the computer system (e.g., 6000B) ceases output of the first content (e.g., automatically, without user input) in response to the computer system (e.g., 6000B) detecting (e.g., by the computer system) a request (e.g., 6298) (or, optionally, accepting a request) to output content (e.g., 6296) that cannot be added to the shared-content session (e.g., content that cannot be shared, and/or content that is not supported by and/or compatible with the shared-content session). Ceasing output of the first content in response to detecting a request to output content that cannot be added to the shared-content session conserves computational resources of the computer system by automatically ceasing output of the first content without requiring additional input from the user and ceasing output of the first content when the request is received. Conserving computational resources of the computer system enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, while the shared-content session is active and the computer system is outputting the first content, the computer system detects or accepts a request to output content that cannot be added to the shared-content session and, in response, ceases output of the first content (e.g., while, optionally, maintaining connected to the shared-content session). In some embodiments, the computer system leaves the shared-content session automatically in response to detecting and/or accepting a request to output content that cannot be added to the shared-content session.
In some embodiments, while the computer system (e.g., 6000A) outputs the first content, the computer system (e.g., 6000A) detects a request (e.g., 6298) to play second content (e.g., 6296) that cannot be added to the shared-content session. In response to the computer system (e.g., 6000A) detecting the request to play the second content, the computer system (e.g., 6000B) initiates a process for playing the second content. After the computer system (e.g., 6000B) plays at least a portion of the second content, the computer system (e.g., 6000B) ceases to play the second content (e.g., in response to a request to cease playing the second content or as a result of an end of the second content being reached). After (e.g., in conjunction with or in response to) the computer system (e.g., 6000B) ceases to play the second content, in accordance with a determination that the shared-content session is ongoing, the computer system (e.g., 6000B) displays a selectable output content notification (e.g., 6312 and/or 6314) that, when selected, initiates a process to output (e.g., re-initiate output of, resume playback of) respective content that is currently playing in the shared-content session (e.g., the first content or third content if the shared-content session has switched to playing the third content). Displaying a selectable output content notification after ceasing to display the second content, in accordance with a determination that shared-content session is ongoing provides feedback to the user of the computer system that the shared-content session is continuing, provides additional control options for initiating a process to output respective content that is currently playing in the shared-content session without cluttering the user interface with additional displayed controls until after ceasing to play the second content, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, when playback of unsupported media is complete, the computer system displays a notification that can be selected to re-initiate output of the content and/or re-join the shared-content session.
In some embodiments, after (e.g., in conjunction with or in response to) the computer system (e.g., 6000B) ceases to play the second content, in accordance with a determination that the shared-content session is no longer ongoing, the computer system (e.g., 6000B) forgoes displaying the selectable output content notification that, when selected, initiates a process to output (e.g., re-initiate output of, resume playback of) respective content that is currently playing in the shared-content session (e.g., the first content or third content if the shared-content session has switched to playing the third content). In some embodiments, when playback of unsupported media is complete, the computer system displays a notification that can be selected to re-initiate output of the content and/or re-join the shared-content session
Note that details of the processes described above with respect to method 1100 (e.g.,
As described below, method 1200 provides an intuitive way for integrating a shared-content session with a messaging interface. The method reduces the cognitive burden on a user for using a messaging interface in conjunction with a shared-content session, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to participant in a shared-content session with a messaging interface faster and more efficiently conserves power and increases the time between battery charges.
The computer system (e.g., 6000B) displays (1202), via an output generation component of the one or more output generation components (e.g., 6001B), a messaging interface (e.g., 6004A or 6004B) for a respective message conversation (e.g., 6004A-1 and/or 6004B-1) (e.g., a user interface of a messaging application), including concurrently displaying: a message display region (e.g., 6004A-3 or 6004B-3) (1204) (e.g., a text message display region) of the respective message conversation between two or more participants (e.g., 6004A-2) of the respective message conversation that includes a plurality of messages (e.g., 6004A-1 or 6004B-1) from different participants to other participants in the message conversation (In some embodiments, the message display region includes one or more messages from a user associated with the computer system and/or one or more messages from one or more participants of the message conversation other than the user associated with the computer system); and a graphical representation (e.g., 6010A or 6010B) of an ongoing shared-content session (1206) with one or more participants of the message conversation (e.g., with the electronic devices of the participants of the message conversation), wherein the graphical representation of the ongoing shared-content session includes first information about one or more parameters of the shared-content session, including content (e.g., information about the content (e.g., the title of the content, and/or playback status of the content)) (in some embodiments, the content is synchronized content and/or screen-share content) in the shared-content session and participant status (e.g., a number of participants, names of participants, status of participants, identifier, and/or activity level of participants) in the shared-content session.
After the computer system (e.g., 6000B) displays the messaging interface and after one or more parameters of the ongoing shared-content session have changed (e.g., a participant has left or joined the shared-content session; different content has been shared or output in connection with the shared-content session; and/or a playback status of the content has changed), the computer system (e.g., 6000B) receives (1208) a request (e.g., 6034) to display a portion of the respective message conversation that includes the graphical representation of the shared-content session.
In response to the computer system (e.g., 6000B) receiving the request to display the portion of the respective message conversation that includes the graphical representation of the shared-content session, the computer system (e.g., 6000B) displays (1210) 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, wherein the updated representation of the ongoing shared-content session includes second information about the one or more parameters of the shared-content session, that is different from the first information, including different content in the shared-content session (e.g., information about the different content (e.g., the title of the different content, and/or playback status of the different content)) and/or different participant status (e.g., a number, identifier, and/or activity level of participants) in the shared-content session (e.g., 6010A and 6010B in
In some embodiments, the computer system (e.g., 6000B) displays a selectable join option (e.g., 6010B-1 and/or 6024-1) (e.g., an icon, affordance, and/or button) that, when selected, initiates a process to join the ongoing shared-content session (e.g., a process for the computer system to join or connect to the ongoing shared-content session). Displaying a selectable join option provides feedback to a user of the computer system about the state of the ongoing shared-content session, provides additional control options for initiating a process to join the ongoing shared-content session without cluttering the user interface with additional displayed controls until an input is received, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the join option is displayed in the messaging interface, in the message display region of the respective message conversation, or in a message in the respective message conversation. In some embodiments, the graphical representation of the ongoing shared-content session includes (e.g., is) the join option. In some embodiments, the computer system detects an input corresponding to selection of the join option and, in response, initiates the process to join the ongoing shared-content session. In some embodiments, the computer system displays the join option after the computer system has disconnected from (e.g., left) the shared-content session.
In some embodiments, displaying the join option includes displaying the join option (e.g., 6010B-1) in the message display region (e.g., 6004A-3 and/or 6004B-3) of the respective message conversation (E.G.,
In some embodiments, in accordance with a determination that the shared-content session is initiated by the computer system (e.g., 6000A), the computer system (e.g., 6000A) forgoes displaying the join option (e.g., 6010A does not include join option 6010B-1) (e.g., displaying the messaging interface without the join option (in some embodiments, displaying a “leave” option instead of the “join” option, wherein the leave option is selectable to disconnect the computer system from the shared-content session)). Forgoing displaying the join option in accordance with a determination that the shared-content session is initiated by the computer system reduces the computational workload of the computer system by forgoing displaying the join option and avoiding accidental inputs while join option is not displayed. Reducing the computational workload of the computer system enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, in accordance with a determination that the ongoing shared-content session between the computer system (e.g., 6000B) and one or more external computer systems (e.g., 6000A) is active (e.g., the computer system is connected to, joined, and/or participating in the shared-content session), the computer system (e.g., 6000B) forgoes displaying the join option (e.g., 6010B in
In some embodiments, while the computer system (e.g., 6000A and/or 6000B) displays the messaging interface for the respective message conversation, the computer system (e.g., 6000A and/or 6000B) displays one or more selectable communication options (e.g., 6015A-7 and/or 6015B-7) that, when selected, initiate a process to start a respective real-time communication session (e.g., a real-time audio communication session, a real-time video communication session, a real-time audio/video communication session). Displaying the one or more selectable communication options provides additional control options for initiating a process to start a respective real-time communication session without cluttering the user interface with additional displayed controls until an input is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, in response to detecting selection of the one or more selectable communication options, the computer system initiates (e.g., automatically, without further user input) the respective real-time communication session.
In some embodiments, while the computer system (e.g., 6000A and/or 6000B) displays the messaging interface for the respective message conversation, the computer system (e.g., 6000A and/or 6000B) displays one or more selectable status options (e.g., 6015A-1 and/or 6015B-1) that, when selected (e.g., via input 6036 in
In some embodiments, displaying the graphical representation of the ongoing shared-content session includes displaying the graphical representation (e.g., 6010A and/or 6010B) of the ongoing shared-content session in the message display region (e.g., 6004A-3 and/or 6004B-3) when (e.g., in accordance with a determination that) the shared-content session is initiated from the messaging interface (e.g., 6004A and/or 6004B) or when (e.g., in accordance with a determination that) the shared-content session is not initiated from the messaging interface. Displaying the graphical representation of the ongoing shared-content session in the message display region when the shared-content session is initiated from the messaging interface or when the shared-content session is not initiated from the messaging interface provides feedback to a user of the computer system about the state of the ongoing shared-content session and indicates that the shared-content session is associated with the participants of the message conversation. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the graphical representation of the ongoing shared-content session is displayed in the message display region whether or not the shared-content session was initiated from the messaging interface.
In some embodiments, the respective message conversation includes a plurality of messages (e.g., 6004A-1 and/or 6004B-1) that occurred before initiation of the shared-content session. In some embodiments, the plurality of messages that occurred before initiation of the shared-content session are displayed in the message display region above the graphical representation of the shared-content session.
In some embodiments, the respective message conversation includes a plurality of messages (e.g., 6352) that occurred after initiation of the shared-content session. In some embodiments, the plurality of messages that occurred after initiation of the shared-content session are displayed in the message display region below the graphical representation of the shared-content session.
In some embodiments, the graphical representation (e.g., 6010A, 6010B, and/or 6024) of the shared-content session includes a description (e.g., “Watching First Episode” in
In some embodiments, after the computer system (e.g., 6000B) displays the graphical representation (e.g., 6010A, 6010B, and/or 6024) of the shared-content session including a description of a first activity in the shared-content session (e.g., participants of the shared-content session have a first status (e.g., participating in the shared-content session), are watching first video content, outputting first audio content (e.g., media and/or voice communication audio), and/or displaying first screen-share content), the computer system (e.g., 6000B) detects a second activity in the shared-content session different from the first activity (e.g., participants of the shared-content session have a second status, are watching second video content, outputting second audio content (e.g., media and/or voice communication audio), and/or displaying second screen-share content). In some embodiments, after the computer system (e.g., 6000B) detects (e.g., in response to detecting) the second activity in the shared-content session, the computer system (e.g., 6000B) displays the graphical representation of the shared-content session including a description (e.g., “Watching Movie 3” in
In some embodiments, the graphical representation (e.g., 6010A, 6010B, and/or 6024) of the shared-content session includes a number of participants of the shared-content session (e.g., a number of invited participants (e.g., that have been invited but not joined), and/or a number of active participants (e.g., participants that have joined and are in the shared-content session)). Displaying the graphical representation of the ongoing shared-content session including a number of participants of the shared-content session provides feedback to a user of the computer system about the state of the ongoing shared-content session and the number of participants of the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, after the computer system (e.g., 6000B) displays the graphical representation (e.g., 6010A, 6010B, and/or 6024) of the shared-content session including a first number of participants of the shared-content session, the computer system (e.g., 6000B) detects a change in the number of participants of the shared-content session (e.g., one or more participants of the shared-content session have joined and/or left the shared-content session such that the cumulative number of participants has changed). In some embodiments, after the computer system (e.g., 6000B) detects (e.g., in response to detecting) the change in the number of participants of the shared-content session, the computer system (e.g., 6000B) displays the graphical representation of the shared-content session including a second number of participants of the shared-content session that is different from the first number of participants of the shared-content session (e.g., see 6010A and 6010B in
In some embodiments, the computer system (e.g., 6000B) receives an indication of a change in a status of a participant in the shared-content session (e.g., a user had joined or left the shared-content session). In some embodiments in response to receiving the indication of the change in the status of the participant in the shared-content session, the computer system (e.g., 6000B) updates the participant status in the graphical representation (e.g., 6010A, 6010B, and/or 6024) of the ongoing shared-content session (e.g., see 6010A and 6010B in
Note that details of the processes described above with respect to method 1200 (e.g.,
As described below, method 1300 provides an intuitive way for displaying information associated with a shared-content session. The method reduces the cognitive burden on a user for displaying information associated with a shared-content session, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to displaying information associated with a shared-content session faster and more efficiently conserves power and increases the time between battery charges.
While a shared-content session (1302) between the computer system (e.g., 6000A or 6000B) and one or more external computer systems (e.g., 6000B or 6000A) is active: the computer system (e.g., 6000A or 6000B) receives (1304), via the one or more input devices (e.g., 6001A, 6002A, 6003A, 6001B, 6002B, and/or 6003B), a request (e.g., 6036 or 6322) to display information associated with the shared-content session (e.g., an input on an indication of an ongoing shared-content session; an input on a representation of shared content). In response to receiving (1306) the request to display information associated with the shared-content session: the computer system (e.g., 6000B) displays (1308), via an output generation component of the one or more output generation components (e.g., 6001B), an indication (e.g., 6042A or 6042B) (e.g., text; a graphical indication) of one or more participants (e.g., “Ryan Apples” in
In accordance with a determination that the shared-content session includes first content (e.g., synchronized content and/or screen-share content), the computer system (e.g., 6000B) displays (1310) (e.g., concurrently displaying), via the output generation component of the one or more output generation components (e.g., 6001B), a representation (e.g., 6330) of the first content (e.g., the first content is displayed (e.g., simultaneously) at the computer system and the external computer systems associated with the participants of the shared-content session).
In accordance with a determination that the shared-content session includes second content different from the first content (e.g., content for synchronized output) (e.g., screen-share content), the computer system (e.g., 6000B) displays (1312) (e.g., concurrently displaying), via the output generation component of the one or more output generation components (e.g., 6001B), a representation (e.g., 6328) of the second content that is different from the representation of the first content (e.g., the second content is displayed (e.g., concurrently) at the computer system and the external computer systems associated with the participants of the shared-content session). Displaying the 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, and displaying the representation of the first content or the representation of the second content in accordance with a determination that the shared-content session includes the first or second content, provides feedback to a user of the computer system about the status of participants of the shared-content session and the content that is added to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the one or more users that have been invited to the shared-content session but have not joined the shared-content session (and the one or more participants in the shared-content session) are participants of a group messaging conversation (e.g., 6004) that occurred before the shared-content session was active. In some embodiments, the group messaging conversation continues to occur while and/or after the shared-content session is active. In some embodiments, the shared-content session is activated by a request by one of the participants of the group messaging conversation to invite the participants of the messaging conversation as a group.
In some embodiments, the one or more users that have been invited to the shared-content session but have not joined the shared-content session (and the one or more participants in the shared-content session) are participants of a prior shared-content session (e.g., the shared-content session in
In some embodiments, in response to receiving the request to display information associated with the shared-content session, the computer system (e.g., 6000A) displays a status (e.g., 6046 in
In some embodiments, in response to receiving the request to display information associated with the shared-content session, the computer system (e.g., 6000B) displays (e.g.,
In some embodiments, in response to receiving the request to display information associated with the shared-content session, the computer system (e.g., 6000B) displays a selectable group messaging object (e.g., 6015A-4 or 6015B-4) that, when selected, causes the computer system (e.g., 6000B) to provide (e.g., display) a messaging interface (e.g., 6004A or 6004B) of a group message conversation that includes users associated with the shared-content session (e.g., users that have joined or been invited to the shared-content session). Displaying a selectable group messaging object in response to receiving the request to display information associated with the shared-content session provides additional control options for causing the computer system to provide a messaging interface of a group message conversation that includes users associated with the shared-content session without cluttering the user interface with additional displayed controls until the request is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the group message conversation exists while the shared-content session is active or inactive. In some embodiments, the messaging interface includes a plurality of messages between the participants of the group message conversation (e.g., in a message region of the messaging interface).
In some embodiments, in response to receiving the request to display information associated with the shared-content session, the computer system (e.g., 6000A or 6000B) displays a selectable leave option (e.g., 6040-1) that, when selected, causes the computer system (e.g., 6000A or 6000B) to leave (e.g., disconnect from, end) the shared-content session. Displaying a selectable leave object in response to receiving the request to display information associated with the shared-content session provides additional control options for causing the computer system to leave the shared-content session without cluttering the user interface with additional displayed controls until the request is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, when the computer system leaves the shared-content session, the computer system is no longer in communication with the one or more external computer systems via the shared-content session. In some embodiments, when the computer system leaves the shared-content session, the shared-content session remains active between two or more of the external computer systems (e.g., two or more of the external computer systems remain in communication via the shared-content session).
In some embodiments, in response to receiving the request to display information associated with the shared-content session, the computer system (e.g., 6000A) displays an indication (e.g., 6038A-1) (e.g., a name, a group name, a photo, and/or a photo that represents a group (e.g., multiple users)) of an identity of users (e.g., a group of users) that are associated with the shared-content session (e.g., as a group). Displaying an indication of an identity of users that are associated with the shared-content session in response to receiving the request to display information associated with the shared-content session provides feedback to a user of the computer system about the identity of users associated with the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the identity of the users (e.g., the group) that are associated with the shared-content session exists (e.g., remains stored; is available in an application, such as, e.g., an application that stores information of contactable users (e.g., a contacts application), a messaging application, a video chat application, and/or a phone application) after the shared-content session is no longer active.
In some embodiments, in response to receiving the request to display information associated with the shared-content session, the computer system (e.g., 6000B) displays an add-participant option (e.g., 6044A or 6044B) that, when selected, initiates a process to invite (or, optionally add) a user to the shared-content session (e.g., to add or invite to a group of users associated with the shared-content session). Displaying an add-participant option in response to receiving the request to display information associated with the shared-content session provides additional control options for initiating a process to invite a user to the shared-content session without cluttering the user interface with additional displayed controls until the request is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the process to add a user to the shared-content session includes displaying an interface (e.g., including a list of users) that provides the ability to search for, find, and/or select a user.
In some embodiments, in response to receiving the request to display information associated with the shared-content session, the computer system (e.g., 6000A) displays a selectable reminder option (e.g., 6048) that, when selected, causes one or more external computer systems (e.g., 6000B) associated with one or more of the one or more users that have been invited to the shared-content session but have not joined the shared-content session to output a reminder (e.g., display a notification or alert, output a visible, tactile, audio, and/or haptic output) to join the shared-content session. Displaying a selectable reminder option in response to receiving the request to display information associated with the shared-content session provides additional control options for causing one or more external computer systems associated with one or more of the one or more users that have been invited to the shared-content session but have not joined the shared-content session to output a reminder to join the shared-content session without cluttering the user interface with additional displayed controls until the request is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, in response to receiving the request to display information associated with the shared-content session, the computer system (e.g., 6000A or 6000B) displays a selectable copy-invite option (e.g., 6050A or 6050B) that, when selected, copies a link to the shared-content session. Displaying a selectable copy-invite option in response to receiving the request to display information associated with the shared-content session provides additional control options for copying a link to the shared-content session without cluttering the user interface with additional displayed controls until the request is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the computer system pastes the copied link (e.g., in response to receiving an input corresponding to a request to insert the copied link into a displayed field (e.g., a message compose field) of a communication interface (e.g., a messaging application, an email application)). In some embodiments, the computer system transmits the copied link (e.g., via a messaging application; via an email application) to a computer system associated with an account of a user to invite and/or allow the computer system associated with the account of the user to join the shared-content session.
In some embodiments, in response to receiving the request to display information associated with the shared-content session, the computer system (e.g., 6000B) displays one or more representations (e.g., 6052A or 6052B) of content that was previously in (and/or, optionally, was previously added to and is currently in) the shared-content session. Displaying one or more representations of content that was previously in the shared-content session in response to receiving the request to display information associated with the shared-content session provides feedback to a user of the computer system about content that was previously in the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the computer system displays a history of some or all of the content in shared-content session(s) with this group of participants.
In some embodiments, in response to receiving the request to display information associated with the shared-content session, the computer system (e.g., 6000B) displays one or more indications (e.g., 6056) (e.g., names, initials, pictures, and/or avatar representations) of users that added (e.g., initiated sharing of) the content that was previously output during (and/or, optionally, was previously added to and is currently in) a respective shared-content session (e.g., a current shared-content session or a prior shared-content session) that included the participants in the shared-content session. Displaying one or more indications of users that added the content that was previously output during a respective shared-content session that included the participants in the shared-content session, in response to receiving the request to display information associated with the shared-content session, provides feedback to a user of the computer system about the users who added the content that was previously output during a shared-content session that included the participants in the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the computer system displays an indication of a user that initiated sharing of a (e.g., each) content that was previously in (and/or, optionally, was previously added to and is currently in) the shared-content session.
In some embodiments, in response to receiving the request to display information associated with the shared-content session, the computer system (e.g., 6000B) displays an indication (e.g., 6330-1) of a state (e.g., playback progress, paused, stopped, playing, and/or current position or time) of content (e.g., content currently being output) in the shared-content session. Displaying an indication of a state of content in the shared-content session in response to receiving the request to display information associated with the shared-content session provides feedback to a user of the computer system about the progress of the content in the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments (e.g., embodiments depicted in
In some embodiments, in response to receiving the request to display information associated with the shared-content session, the computer system (e.g., 6000B or 6000A) displays a selectable play-for-everyone option (or a selectable play-for-group option 6220-1) that, when selected, selects (e.g., changes) a parameter of the shared-content session that determines, at least in part, whether selected content is added to the shared-content session (e.g., play for group is enabled or disabled). Displaying a selectable play-for-everyone (or play-for-group) option in response to receiving the request to display information associated with the shared-content session provides additional control options for selecting a parameter of the shared-content session that determines, at least in part, whether selected content is added to the shared-content session without cluttering the user interface with additional displayed controls until the request is received, and avoids accidental inputs while the additional control options are not displayed. Providing additional control options without cluttering the user interface with additional displayed controls and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, in response to the computer system (e.g., 6000A or 6000B) receiving the request to display information associated with the shared-content session, the indication (e.g., 6038A, 6038B, 6042A, and/or 6042B) of the 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 is concurrently displayed (e.g.,
In some embodiments, the computer system (e.g., 6000B) displays, via an output generation component (e.g., 6001B) of the one or more output generation components (and, optionally, in response to receiving the request to display information associated with the shared-content session), a selectable display mode option (e.g., 6676) (e.g., an icon, affordance, button, or toggle switch) that, when selected, sets (e.g., changes) a layout (e.g., a grid layout or a layout in which representations of participants are staggered and/or overlapping) in which representations (e.g., 6644-1 to 6644-6) of participants of a video communication session (e.g., a video communication session between the participants of the shared-content session) are displayed in a user interface of a video communication application. Displaying the selectable display mode option for setting a layout in which representations of the participants of a video communication session are displayed in the user interface of the video communication application provides an efficient method for a user to select and set a layout, which provides additional control options without cluttering the user interface with additional displayed controls.
In some embodiments, the display mode option (e.g., 6676) is displayed concurrently with the indication of one or more participants in the shared-content session, the one or more users that have been invited to the shared-content session but have not joined the shared-content session, the representation of the first content, and/or the representation of the second content (e.g., as shown in
Note that details of the processes described above with respect to method 1300 (e.g.,
In some embodiments, some of the elements depicted in the figures are shown having different sizes for the sake of clarity and, therefore, may not be shown to-scale.
In the embodiments provided herein, John's device 14000A can be described as performing a set of functions associated with the shared-content session, and Jane's device 14000B can be described as performing a different set of functions associated with the shared-content session. These descriptions are not intended to limit the functions performed by the respective devices, but rather, are provided to illustrate various aspects and embodiments of a shared-content session. Thus, unless specified otherwise, the functions that are described as being performed by John's device 14000A are similarly capable of being performed by Jane's device 14000B and the devices of other participants in the shared-content session. Similarly, the functions that are described as being performed by Jane's device 14000B are similarly capable of being performed by John's device 14000A and the devices of other participants in the shared-content session, unless specified otherwise.
Unless noted otherwise, devices 14000 are capable of participating in shared-content sessions, including sharing screen-share and/or synchronized content, in a manner analogous to that described above with respect to
In
Messages window 14012 depicts a messages conversation with members of the Mountaineers group, and includes shared-content session affordance 14016, which is selectable to initiate a shared-content session with the Mountaineers group. John selects shared-content session affordance 14016 via input 14018 (e.g., a mouse click).
Jane's device 14000B displays a desktop with browser window 14030, status bar 14020B, and dock 14025B with dynamic region 14025B-1. In
In response to John's selection of the shared-content session affordance 14016, a shared-content session is initiated for the Mountaineers group. In the embodiment depicted in
In
In
In
In
As shown in
In
In
In
When the screen sharing starts, content located on John's desktop, such as messages window 14012 and TV app window 14014, is shared with the members of the Mountaineers group. In some embodiments, some items that are displayed over John's desktop are, optionally, not included in the screen sharing. For example, while control region 14045A is displayed over desktop 14010 in some instances, it is not shared as a part of the contents of John's screen. In some embodiments, status bar 14020A is not included in the shared content. In some embodiments, dock 14025A is not included in the shared content. In some embodiments, ancillary user interface objects such as popovers, menus, system messages, and the like are not included in the shared content.
In
Dotted box 14102 is depicted in the figures, including in
When John's screen is shared with the Mountaineers group, participant devices of the shared-content session begin displaying a real time representation of John's shared screen. For example, in
In
In
In
John can change the screen being shared using sharing preview 14124. For example, when John hovers cursor 14136 over sharing preview 14124, John's device 14000A displays change-shared-screen affordance 14138. If John selects affordance 14138, John's device 14000A prompts John to select a screen for display, similar to the embodiments discussed above with respect to
In
In
In response to input 14144, John's device 14000A displays prompt 14146 prompting John to choose which window to share for the shared-content session. In
In
When a specific window is not being shared, the window is displayed with window controls, such as window controls 14132 shown on browser window 14086 in
Jane's device 14000B displays notification 14168, animated sharing app icon 14052, and shared-content window 14170. Notification 14168 informs Jane that John started sharing his browser in the shared-content session. Jane's device 14000B displays shared-content window 14170 in the background, behind Jane's browser window 14030. Shared-content window 14170 is similar to screen-share window 14108, except that shared-content window 14170 displays the shared content of a single window, rather than the shared content of a screen. In
Jane's device 14000B shows shared-content window 14170 in the foreground in response to input 14172. Shared-content window 14170 depicts representation 14086′ of browser window 14086. However, in the representation depicted in shared-content window 14170, sharing-status affordance is shown having a greyed out appearance 14176, indicating to Jane that she is viewing a window that is being shared with her device, and not a window that she is sharing with other participants in the shared-content session (in other words, indicating that Jane's device 14000B is receiving the shared window, not sharing the window).
In
In some embodiments, Jane's device 14000B displays additional information and controls for manipulating display of shared-content window 14170. The information and controls are displayed as a part of chrome 14185, which is displayed, in some embodiments, adjacent to shared-content window 14170 as shown in
In some embodiments, Jane's device 14000B does not display chrome 14185 unless certain conditions are met such as, for example, an input is detected at shared-content window 14170 or shared-content window 14170 is selected, within a particular size range, needs to be resized, or other relevant criteria are met. In
In
As shown in
In
For example, in
In
In
In
In
In
In
In
In
In
In response to John starting playback of “First Episode” for the Mountaineers group, Jane's device 14000B launches TV app (as indicated by animated TV app icon 14248), displays media window 14240B, and begins playing “First Episode” at Jane's device. Jane's device is shown outputting audio 14244B for “First Episode.” Jane pauses playback for the Mountaineers group via input 14246.
In
In
John selects video conference affordance 14256 via input 14254 to initiate a video conference with the Mountaineers group while they are watching “First Episode.”
In
Similarly, Jane's device 14000B displays video conference window 14262B showing video feeds 14274 and 14276 for John and Ryan, respectively, and camera preview 14278. Jane, John, and Ryan are able to interact with each other via the video conference app while sharing content together via the shared-content session. John speaks to the group as indicated by input audio 14060A and output audio 14070B.
In
As shown in
As described below, method 1500 provides an intuitive way for adding content to a shared-content session. The method reduces the cognitive burden on a user for adding content to a shared-content session, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to add content to a shared-content session faster and more efficiently conserves power and increases the time between battery charges.
While a shared-content session between the computer system (e.g., 14000A) and one or more external computer systems (e.g., 14000B) is active and while a plurality of application interface regions (e.g., 14012 and/or 14014) (e.g., application windows) are concurrently displayed in a user interface (e.g., 14010) (1502), including at least a portion of a first application interface region (e.g., 14012 or 14014) (e.g., a first application window) and at least a portion of a second application interface region (e.g., 14012 or 14014) (e.g., a second application window), wherein the shared-content session, when active, enables the computer system (e.g., 14000A) to output respective content (e.g., synchronized content and/or screen-share content) while the respective content is being output by the one or more external computer systems (e.g., 14000B), the computer system (e.g., 14000A) receives (1504), via the one or more input devices (e.g., 14001A, 14002A, 14003A, 14004A, and/or 14005A), a set of one or more inputs (e.g., 14144 or selection of 14074) (e.g., a selection of a sharing affordance) corresponding to a request to add an application interface (e.g., content displayed at the computer system (e.g., an application window of an application operating at the computer system)) (e.g., screen-share content) to the shared-content session (e.g., the set of one or more inputs includes an input that corresponds to a request to add an application interface to the shared-content session).
In response to receiving a first input in the set of one or more inputs (and prior to adding a displayed application interface to the shared-content session), the computer system (e.g., 14000A) displays (1506), at a location in the user interface that is visually associated with (e.g., displayed adjacent to; displayed grouped together with) the first application interface region, a first graphical interface object (e.g., 14150 or 14156) (e.g., a sharing affordance that is associated with the first application window) that is selectable to add the first application interface region to the shared-content session without adding the second application interface region to the shared-content session, wherein the first graphical interface object is not visually associated with the second application interface region (e.g., the first graphical interface object is not displayed adjacent to and/or grouped together with the second application interface region). Displaying the first graphical interface object at a location in the user interface that is visually associated with the first application interface region in response to receiving a first input in the set of one or more inputs provides additional controls for adding content to the shared-content session without cluttering the user interface with additional displayed controls until an input is detected, provides feedback to a user of the computer system that the additional displayed controls are for controlling an aspect of the first application interface region, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, displaying the first graphical interface object (e.g., 14150 or 14156) includes displaying at least a portion of the first graphical interface object at a location on the first application interface region (e.g., a location that was displayed prior to receiving the set of one or more inputs corresponding to a request to add an application interface to the shared-content session) (e.g., the sharing affordance is displayed overlaid on the first application window). Displaying at least a portion of the first graphical interface object at a location on the first application interface region provides additional controls for adding content to the shared-content session without cluttering the user interface with additional displayed controls until an input is detected, provides feedback to a user of the computer system that the additional displayed controls are for controlling an aspect of the first application interface region, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 14000A) receives, via the one or more input devices (e.g., 14001A, 14002A, 14003A, 14004A, and/or 14005A), an input (e.g., 14152 or 14158) (e.g., a hover input; and/or hovering a cursor). In some embodiments, in response to receiving the input: in accordance with a determination that the input is directed to the first application interface region (e.g., 14014 or 14086) (e.g., the cursor is hovering over the first application window), the computer system (e.g., 14000A) displays the first application interface region (e.g., 14014) having a visual effect (e.g., highlighting, shading, bolding, outlining, and/or other emphasizing effect) while the computer system (e.g., 14000A) displays the second application interface region (e.g., 14086) without the visual effect. In some embodiments, in response to receiving the input: in accordance with a determination that the input is directed to the second application interface region (e.g., the cursor is hovering over the second application window), the computer system (e.g., 14000A) displays the second application interface region (e.g., 14086) having the visual effect while the computer system (e.g., 14000A) displays the first application interface region (e.g., 14014) without the visual effect. Displaying the first or second application interface region having the visual effect provides feedback to a user of the computer system that the first or second application interface region is capable of being selected for being added to the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the computer system (e.g., 14000A) receives, via the one or more input devices (e.g., 14001A, 14002A, 14003A, 14004A, and/or 14005A), an input (e.g., 14152 or 14158) corresponding to a selection of the first application interface region or the second application interface region (e.g., clicking on the first application window or the second application window). In some embodiments, in response to receiving the input corresponding to a selection of the first application interface region or the second application interface region: in accordance with a determination that the input is a selection of the first application interface region while the first application interface region has a first appearance (e.g., partially displayed and/or displayed in the background) corresponding to a first arrangement of the first application interface region and the second application interface region (e.g., 14000A in
In some embodiments, displaying the first application interface region having the second appearance in accordance with a determination that the input is a selection of the first application interface region includes displaying the first application interface region having the second appearance without adding the first application interface region to the shared-content session (e.g., 14000A in
In some embodiments, displaying the first graphical interface object (e.g., the sharing affordance that is associated with the first application window) is performed in accordance with a determination that the first application interface region is in a foreground region of the user interface (e.g., 14086 in
In some embodiments, in response to receiving the first input in the set of one or more inputs, the computer system (e.g., 14000A) displays, at a location in the user interface that is visually associated with the second application interface region (e.g., 14086), a third graphical interface object (e.g., 14156) (e.g., a sharing affordance that is associated with the second application window) that is associated with adding the second application interface region to the shared-content session (e.g., without adding the first application interface region to the shared-content session), wherein the third graphical interface object is displayed concurrently with the first graphical interface object (e.g., 14150) and is not visually associated with the first application interface region (e.g., 14014) (e.g., the third graphical interface object is displayed concurrently with the first graphical interface object and is not displayed adjacent to and/or grouped together with the first application interface region). Displaying the second application interface region having the third graphical interface object that is associated with adding the second application interface region to the shared-content session provides additional controls for adding content to the shared-content session without cluttering the user interface with additional displayed controls until an input is detected, provides feedback to a user of the computer system that the additional displayed controls are for controlling an aspect of the first application interface region and/or the second application interface region, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, sharing affordances are displayed for multiple windows concurrently. In some embodiments, a sharing affordance is selectable when the corresponding window is not in the foreground (e.g., is positioned at least partially behind one or more other windows). In some embodiments, a sharing affordance is selectable when the corresponding window is in the foreground.
In some embodiments, while the shared-content session between the computer system (e.g., 14000A) and one or more external computer systems (e.g., 14000B) is active, the computer system (e.g., 14000A) receives, via the one or more input devices (e.g., 14001A, 14002A, 14003A, 14004A, and/or 14005A), an input (e.g., 14160) directed to the first graphical interface object (e.g., 14156) (e.g., a sharing affordance that is associated with the first application window). In response to receiving the input directed to the first graphical interface object, the computer system (e.g., 14000A) adds the first application interface region to the shared-content session without adding the second application interface region to the shared-content session (e.g., causing the first application interface region to be displayed concurrently at the one or more external computer systems while the first application interface region is displayed at the computer system). Adding the first application interface region to the shared-content session without adding the second application interface region to the shared-content session in response to receiving the input directed to the first graphical interface object improves privacy by avoiding accidentally adding content to the shared-content session.
In some embodiments, in response to receiving a second input in the set of one or more inputs (e.g., a selection of a share affordance in a shared-content session object), and prior to displaying the first graphical interface object, the computer system (e.g., 14000A) concurrently displays: a first sharing option (e.g., 14076) that is selectable to add the user interface (e.g., 14010) that includes the plurality of application interface regions to the shared-content session (e.g., a share screen option), and a second sharing option (e.g., 14074) that is selectable to initiate a process for adding the first application interface region (e.g., 14014) or the second application interface region (e.g., 14012 or 14086) to the shared-content session (e.g., a share window option). Concurrently displaying the first sharing option that is selectable to add the user interface that includes the plurality of application interface regions to the shared-content session and the second sharing option that is selectable to initiate a process for adding the first application interface region or the second application interface region to the shared-content session provides additional controls for adding content to the shared-content session without cluttering the user interface with additional displayed controls until an input is detected, provides feedback to a user of the computer system that the additional displayed controls are for sharing the plurality of application interface regions, first application interface region, and/or the second application interface region, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, in response to receiving a selection of the first sharing option (e.g., 14074) or the second sharing option (e.g., 14076) (In some embodiments, and prior to displaying the first graphical interface object) (In some embodiments, and in lieu of displaying the first graphical interface object), the computer system (e.g., 14000A) displays a graphical representation of a countdown until content from the computer system (e.g., 14000A) is added to the shared-content session (e.g., a countdown of an amount of time (e.g., 5 seconds, 4 seconds, 3 seconds, 2 seconds) until the respective content (e.g., the user interface that includes the plurality of application interface regions; the first application interface region or the second application interface region) is added to the shared-content session) (In some embodiments, before the countdown is complete, the graphical representation of the countdown is selectable to terminate the process for adding the content to the shared-content session). Displaying the graphical representation of a countdown in response to receiving a selection of the first sharing option or the second sharing option provides feedback to a user of the computer system that the relevant content is about to be shared in the shared-content session, and provides additional controls for terminating the process for adding content to the shared-content session without cluttering the user interface with additional displayed controls until the countdown begins. Providing improved feedback and providing additional controls without cluttering the user interface enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, while the shared-content session between the computer system (e.g., 14000A) and one or more external computer systems (e.g., 14000B) is active and the first application interface region (e.g., 14086) is in the shared-content session (e.g., the first application window is concurrently displayed at the one or more external computer systems while the first application window is being displayed at the computer system), the computer system (e.g., 14000A) displays the first application interface region including a sharing status affordance (e.g., 14166) that is selectable to display one or more options for performing a respective function associated with the shared-content session (e.g., stop sharing the application window, change the shared application window, and/or share the entire UI (displayed screen)). Displaying the first application interface region including a sharing status affordance that is selectable to display one or more options for performing a respective function associated with the shared-content session provides additional controls for managing the display of content being shared in the shared-content session without cluttering the user interface with additional displayed controls until an input is detected, provides feedback to a user of the computer system that the first application interface region is being shared, and avoids accidental inputs associated with controls that are displayed when the sharing status affordance is not displayed (e.g., minimizing/maximizing/closing the window). Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, at least a portion of the sharing status affordance is displayed at a location in the first application interface region that includes a first set of one or more controls (e.g., 14132) (e.g., close window control, minimize window control, and/or maximize window control) that are selectable for changing display of the first application interface region when the first application interface region is not added to the shared-content session. In some embodiments, when the first application interface region is not added to the shared-content session, the first application interface region includes the first set of one or more controls, and when the first application interface region is added to the shared-content session, the first set of one or more controls are replaced with the sharing status affordance. Displaying the sharing status affordance at a location in the first application interface region that includes a first set of one or more controls that are selectable for changing display of the first application interface region when the first application interface region is not added to the shared-content session provides additional controls for managing the display of content being shared in the shared-content session without cluttering the user interface with additional displayed controls until an input is detected, provides feedback to a user of the computer system that the first application interface region is being shared, and avoids accidental inputs associated with controls that are displayed when the sharing status affordance is not displayed (e.g., minimizing/maximizing/closing the window). Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, while the computer system (e.g., 14000A) displays the first application interface region including the sharing status affordance, the computer system (e.g., 14000A) receives a selection (e.g., 14210) of the sharing status affordance (e.g., 14166). In response to receiving the selection of the sharing status affordance, the computer system (e.g., 14000A) displays one or more options (e.g., 14212 and/or 14212-1) for performing a respective function (e.g., stop sharing the application window, change the shared application window, and/or share the entire UI (displayed screen)) associated with the shared-content session (and/or one or more options for changing display of the first application interface region, for example options that correspond to functions of the first set of one or more controls, such as close the application window, minimize the application window, maximize the application window, enter a full screen mode, move the application window to a location on the screen, and/or move display of the application window to a different device). Displaying one or more options for performing a respective function associated with the shared-content session in response to receiving the selection of the sharing status affordance provides additional controls for managing the display of content being shared in the shared-content session without cluttering the user interface with additional displayed controls until an input is detected, provides feedback to a user of the computer system that the first application interface region is being shared, and avoids accidental inputs associated with controls that are displayed when the sharing status affordance is not displayed (e.g., minimizing/maximizing/closing the window). Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, while the computer system (e.g., 14000A) displays the first application interface region (e.g., 14086) including the sharing status affordance (e.g., 14166), wherein the sharing status affordance is displayed at a first location (e.g., location of 14166 in
In some embodiments, while the shared-content session between the computer system (e.g., 14000A) and one or more external computer systems (e.g., 14000B) is active and the first application interface region is added to the shared-content session, the computer system (e.g., 14000A) displays a shared-content session object (e.g., 14045A-1) that includes a representation (e.g., 14162) of the first application interface region (e.g., a duplicate or preview of the shared first application window). Displaying a shared-content session object that includes a representation of the first application interface region while the shared-content session between the computer system and one or more external computer systems is active and the first application interface region is added to the shared-content session provides a privacy benefit to a user of the computer system by providing feedback to the user about the content that is being output in the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the shared-content session object includes information associated with the shared-content session and/or one or more selectable shared-content session function options that, when selected, cause the computer system to perform a respective function associated with the shared-content session.
In some embodiments, the shared-content session object (e.g., 14045A) is persistently displayed over any of the plurality of application interface regions (e.g., 14014 and/or 14086) displayed in the user interface (e.g., 14010) (e.g., the shared-content session object is always displayed on top of application windows, even if the application windows are moved to the foreground). Persistently displaying the shared-content session object over any of the plurality of application interface regions displayed in the user interface reduces the number of inputs at the computer system by quickly and easily providing additional controls for managing functions associated with the shared-content session and provides feedback to a user of the computer system that the shared-content session is active. Providing improved feedback and reducing the number of inputs for providing additional control options enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, displaying the shared-content session object that includes the representation of the first application interface region includes displaying a representation (e.g., 14166 or 14176) of a sharing status affordance that is displayed in the first application interface region (e.g., the representation of the shared first application window includes a representation of the sharing status affordance). Displaying the representation of a sharing status affordance that is displayed in the first application interface region provides feedback to a user of the computer system that the shared-content session is active and that the first application interface region is being shared in the shared-content session. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, displaying the shared-content session object (e.g., 14045A or 14085A) includes displaying a first option (e.g., 14078) (e.g., a “play for group” affordance (e.g., similar to the “play for group” option 6220-1 that is discussed with respect to
In some embodiments, displaying the shared-content session object (e.g., 14045A or 14085A) includes displaying a second option (e.g., 14080) (e.g., a “play only for me” affordance) that is selectable to enable a mode in which media content (e.g., audio and/or video content) that is selected for output at the computer system (e.g., 14000A) while the shared-content session is active is not automatically added to the shared-content session. Displaying a second option that is selectable to enable a mode in which media content that is selected for output at the computer system while the shared-content session is active is not automatically added to the shared-content session provides additional controls for managing content shared during the shared-content session without cluttering the user interface with additional displayed controls until an input is detected, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, displaying the shared-content session object (e.g., 14045A or 14085A) includes displaying a third option (e.g., 14238) (e.g., a “play together” toggle) that is selectable to disable output (e.g., display, playback) of media at the computer system (e.g., 14000A) during the shared-content session (e.g., without removing the media from the shared-content session; while also terminating output of the media at the one or more external computer systems). In some embodiments, while the shared-content session between the computer system (e.g., 14000A) and one or more external computer systems (e.g., 14000B) is active, and first media content (e.g., 14240A) is being output at the computer system (e.g., 14000A) while the first media content (e.g., 14240B) is being output by the one or more external computer systems (e.g., 14000B), the computer system (e.g., 14000A) detects a selection (e.g., 14280) of the third option. In response to detecting selection of the third option, the computer system (e.g., 14000A) terminates output of the first media content at the computer system (e.g., 14000A) while the shared-content session remains active (e.g., and the first media content continues to be output by the one or more external computer systems or also terminating output of the first media content at the one or more external computer systems). Terminating output of the first media content at the computer system while the shared-content session remains active enhances the user experience of the computer system by allowing a user of the computer system to quickly terminate playback of media content without also terminating the shared-content session, thereby allowing the user to enjoy other features of the shared-content session. Displaying the third option that is selectable to disable output of media at the computer system during the shared-content session provides additional controls for managing content shared during the shared-content session without cluttering the user interface with additional displayed controls until an input is detected, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the third option can be selected after terminating output of the first media content at the computer system (e.g., in response to the computer system closing an application used to output the first media content) to resume output of the first media content at the computer system while the shared-content session remains active and the first media content continues to be output by the one or more external computer systems. In some embodiments, when the output of the first media content resumes, the first media content is output having an elapsed time from when the computer system terminated output of the first media content (e.g., the first media playback does not resume at the point at which the computer system terminated its output, but instead resumes at the time that is currently output at the one or more external computer systems).
In some embodiments, the set of one or more inputs corresponding to a request to add an application interface to the shared-content session includes a selection of a sharing affordance that is displayed in a video conferencing application interface (e.g., during an ongoing video conference that includes video representations of one or more other participants in the video conference). In some embodiments, the shared-content session includes participants from the video conference (e.g., the participants in the video conference are invited to or automatically added to the video conference).
Note that details of the processes described above with respect to method 1500 (e.g.,
As described below, method 1600 provides an intuitive way for displaying a representation of content in a shared-content session. The method reduces the cognitive burden on a user for displaying a representation of content in a shared-content session, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to participate in a shared-content session faster and more efficiently conserves power and increases the time between battery charges.
While a shared-content session between the computer system (e.g., 14000B) and one or more external computer systems (e.g., 14000A) is active (1602), wherein the shared-content session, when active, enables the computer system (e.g., 14000B) to output respective content (e.g., synchronized content and/or screen-share content) while the respective content is being output by the one or more external computer systems (e.g., 14000A), the computer system (e.g., 14000B) receives (1604) data representing first content (e.g., 14010, 14012, 14014, or 14086) (e.g., synchronized content and/or screen-share content, or shared content) that has been selected (e.g., 14082, 14092, 14100, 14144, and/or 14160) for the shared-content session at the external computer system (e.g., 14000A) (e.g., the selection was made at the external computer system). In response to receiving the data representing the first content that has been selected for the shared-content session, the computer system (e.g., 14000B) displays (1606), via an output generation component of the one or more output generation components, a display region (e.g., 14108 or 14170) that includes a representation (e.g., 14010′, 14086′, or 14014′) of the first content (e.g., an application window that includes the first content), including: in accordance with a determination that a first set of criteria is not met (e.g., the application window is currently selected; the application window is not within a size range; the application window is not a window from a multi-window operating system (e.g., the window is an application UI of a mobile device operating system or a shared desktop); and/or input is directed to the application window), displaying (1608) the representation of the first content with a first set of one or more controls (e.g., 14185-2, 14185-3, and/or 14185-4) for controlling a visual appearance of the display region (e.g., resizing controls, zoom controls, and/or size lock controls), wherein the first set of one or more controls is visually associated with (e.g., displayed adjacent to; and/or displayed grouped together with) the representation of the first content; and in accordance with a determination that the first set of criteria is met (e.g., the application window is not currently selected; the application window is within a size range; the application window is a window from a multi-window operating system (e.g., not an application UI of a mobile device operating system or a shared desktop); and/or input is not directed to the application window), displaying (1610) the representation of the first content without the first set of one or more controls for controlling the visual appearance of the display region (e.g., 14000B in
In some embodiments, the first set of criteria includes a criterion that is met when the representation (e.g., 14010′, 14086′, or 14014′) of the first content (e.g., 14010, 14086, or 14014) is in an unselected state (e.g., the representation of the first content is not currently selected) (e.g., the first set of one or more controls is not displayed if the representation of the first content is unselected at the computer system). Displaying the representation of the first content without the first set of one or more controls for controlling a visual appearance of the display region in accordance with a determination that the representation of the first content is in an unselected state provides additional controls for controlling the visual appearance of the display region during the shared-content session without cluttering the user interface with additional displayed controls until the representation of the first content is no longer in an unselected state, provides feedback to a user of the computer system that the additional displayed controls are for controlling an aspect of the display region that includes the representation of the first content, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the representation of the first content is selected at the computer system by an input (e.g., clicking with a mouse, hovering with a cursor, tapping (e.g., on a touch-sensitive display), touching, looking, gazing, and/or focusing) directed to the representation of the first content.
In some embodiments, the first set of criteria includes a criterion that is met when a size of the representation (e.g., 14010′, 14086′, or 14014′) of the first content is within a predetermined range of sizes (e.g., the first set of one or more controls is not displayed if the representation of the first content is within a predetermined range of sizes). Displaying the representation of the first content without the first set of one or more controls for controlling a visual appearance of the display region in accordance with a determination that the size of the representation of the first content is within a predetermined range of sizes provides additional controls for controlling the visual appearance of the display region during the shared-content session without cluttering the user interface with additional displayed controls until the size of the representation of the first content is no longer within the predetermined range of sizes, provides feedback to a user of the computer system that the additional displayed controls are for controlling an aspect of the display region that includes the representation of the first content, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the predetermined range of sizes is based on the aspect ratio of the first content that is being output at the external computer system (e.g., the aspect ratio or one or more dimensions of the representation of the first content is the same as (or within a threshold amount of the aspect ratio or one or more dimensions of) the representation of the first content that is being output at the external computer system).
In some embodiments, the first set of criteria includes a criterion that is met when the representation (e.g., 14010′, 14086′, or 14014′) of the first content is an application window of an operating system that supports display of a plurality of application windows associated with a respective application (e.g., the first set of one or more controls is displayed if the representation of the first content is an application of a mobile operating system or a displayed interface of shared desktop application). Displaying the representation of the first content without the first set of one or more controls for controlling a visual appearance of the display region in accordance with a determination that the representation of the first content is an application window of an operating system that supports display of a plurality of application windows associated with a respective application provides additional controls for controlling the visual appearance of the display region during the shared-content session without cluttering the user interface with additional displayed controls until the first set of criteria is not met, provides feedback to a user of the computer system that the additional displayed controls are for controlling an aspect of the display region that includes the representation of the first content, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, the first set of criteria includes a criterion that is met when the representation of the first content is not an application window of an operating system that supports display of a plurality of application windows associated with a respective application (e.g., the first set of one or more controls is not displayed if the representation of the first content is an application of a mobile operating system or a displayed interface of shared desktop application).
In some embodiments, the first set of criteria includes a criterion that is met when the computer system (e.g., 14000B) does not detect an input (e.g., an input at the computer system (e.g., clicking with a mouse that is in communication with the computer system, hovering with a cursor, tapping (e.g., on a touch-sensitive display that is in communication with the computer system), touching, looking, gazing, and/or focusing) directed to the representation of the first content (e.g., the first set of one or more controls is not displayed when the computer system does not detect an input at the computer system that is directed to the representation of the first content). Displaying the representation of the first content without the first set of one or more controls for controlling a visual appearance of the display region in accordance with a determination that the computer system does not detect an input directed to the representation of the first content provides additional controls for controlling the visual appearance of the display region during the shared-content session without cluttering the user interface with additional displayed controls until an input directed to the representation of the first content is detected, provides feedback to a user of the computer system that the additional displayed controls are for controlling an aspect of the display region that includes the representation of the first content, and avoids accidental inputs while the additional control options are not displayed. Providing improved feedback, providing additional control options without cluttering the user interface with additional displayed controls, and avoiding accidental inputs enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, while the representation of the first content is displayed at a first size without the first set of one or more controls for controlling the visual appearance of the display region (e.g., 14170 in
In some embodiments, displaying the representation (e.g., 14086′) of the first content includes displaying the representation of the first content without displaying a representation of a second set of one or more controls (e.g., 14185-2) (e.g., controls for changing a displayed size of an application window (e.g., minimize window, maximize window, and/or reduce window) (e.g., different from the first set of one or more controls) having an enabled state (e.g., the second set of controls are greyed out, struck through, indicated to be hidden, or otherwise indicated to be unavailable). Displaying the representation of the first content without displaying a representation of a second set of one or more controls having an enabled state provides feedback to a user of the computer system that the representation of the first content is being shared with the computer system and is not a representation of content available at the computer system. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the first set of one or more controls (e.g., 14185-2, 14185-3, and/or 14185-4) includes one or more controls (e.g., 14185-2) (e.g., minimize window, maximize window, and/or reduce window) that are selectable to adjust a displayed size of the display region.
In some embodiments, the first set of one or more controls (e.g., 14185-2, 14185-3, and/or 14185-4) includes one or more controls (e.g., 14185-3) (e.g., zoom in, zoom out, zoom to fit, and/or zoom to actual size) that are selectable to adjust a zoom level of the representation of the first content.
In some embodiments, the first set of one or more controls (e.g., 14185-2, 14185-3, and/or 14185-4) includes a size-lock control (e.g., 14185-4) (e.g., a size-lock affordance) that, when selected, prevents the display region from changing size in response to input from a user who is sharing the content in the display region (e.g., in response to receiving data indicating a change in a size of the first content at the external computer system).
In some embodiments, displaying the representation (e.g., 14086′) of the first content with the first set of one or more controls (e.g., 14185-2, 14185-3, and/or 14185-4) includes displaying a graphical object (e.g., 14185) (e.g., a frame; an application window chrome) adjacent to (and/or connected to) the display region (e.g., 14170) (in some embodiments, overlaid (at least partially) on a portion on the display region), wherein the graphical object includes the first set of one or more controls for controlling a visual appearance of the display region. Displaying a graphical object adjacent to the display region, wherein the graphical object includes the first set of one or more controls for controlling a visual appearance of the display region, provides feedback to a user of the computer system that the first set of one or more controls are selectable for controlling an aspect of the display region that includes the representation of the first content. Providing improved feedback enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently. In some embodiments, in addition to the first set of one or more controls, the graphical object includes additional content associated with the display region. For example, the graphical object can include text describing the content displayed in the display region, a search bar, additional controls, and/or a frame that visually associates the content of the graphical object with the display region. In some embodiments, display of the graphical object is associated with the display region such that the graphical object is not displayed when the display region is not displayed, and is optionally (e.g., conditionally) displayed when the display region is displayed.
In some embodiments, while the display region (e.g., 14170) that includes the representation of the first content occupies an amount of displayed space (e.g., the display region is a first displayed size) and the representation of the first content is a third size, the computer system (e.g., 14000B) receives data indicating a change in a size (e.g., via 14174) of the first content at the external computer system (e.g., 14000A) (e.g., data indicating that the external computer system changed a size of the first content). In some embodiments, in response to receiving the data indicating the change in the size of the first content at the external computer system (e.g., 14000A), the computer system (e.g., 14000B) changes the size of the representation of the first content from the third size to a fourth size different from the third size (e.g., increasing/decreasing the displayed size of the representation of the first content based on the change in size of the first content at the external computer system), including: in accordance with a determination that an automatic resizing feature (e.g., represented by 14185-4) is enabled (e.g., the size lock control is disabled), the computer system (e.g., 14000B) adjusts the amount of displayed space occupied by the display region (e.g., 14170) (e.g., increasing/decreasing the displayed size of the display region with the increased/decreased size of the representation of the first content). In some embodiments, in response to receiving the data indicating the change in the size of the first content at the external computer system (e.g., 14000A), the computer system (e.g., 14000B) changes the size of the representation of the first content from the third size to a fourth size different from the third size (e.g., increasing/decreasing the displayed size of the representation of the first content based on the change in size of the first content at the external computer system), including: in accordance with a determination that the automatic resizing feature (e.g., represented by 14185-4) is disabled (e.g., the size lock control is enabled), forgoing adjusting the amount of displayed space occupied by the display region (e.g., maintaining the displayed size of the display region while the representation of the first content is increase/decreased in size (e.g., scaled)). Selectively adjusting the amount of displayed space occupied by the display region depending on whether the automatic resizing feature is enabled or disabled provides controls for a user of the computer system for determining whether or not the display region automatically resizes and reduces the number of inputs at the computer system by automatically adjusting or maintaining the displayed space occupied by the display region without requiring further input from a user of the computer system. Performing an operation when a set of conditions has been met without requiring further user input enhances the operability of the computer system and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
In some embodiments, the automatic resizing feature is disabled in response to a selection of a size-lock affordance (e.g., 14185-4) (e.g., a size-lock control that is selectable to enable and/or disable the feature for automatically adjusting the size of the display region in response to a change in size of the first content at the external computer system automatic resizing feature).
In some embodiments, the automatic resizing feature is disabled in response to an input (e.g., 14184) (e.g., at the computer system) that corresponds to a request to resize the display region that is received before receiving the data indicating the change in size of the first content at the external computer system (e.g., 14000A). In some embodiments, the automatic resizing feature is enabled in response to a selection (e.g., 14198) of an unlock affordance (e.g., a size lock/unlock control that is selectable to enable and/or disable the feature for automatically adjusting the size of the display region in response to a change in size of the first content at the external computer system). In some embodiments, the unlock affordance is used to disable the automatic resizing feature. In some embodiments, the unlock affordance is different from an affordance (e.g., a lock affordance) that is used to disable the automatic resizing feature.
In some embodiments, while the display region that includes the representation of the first content is displayed having a fifth size and the representation of the first content is displayed having a sixth size (e.g., while the automatic resizing feature is disabled), the computer system (e.g., 14000B) receives a request (e.g., 14198) to enable the automatic resizing feature (e.g., a deselection of the size lock affordance). In response to receiving the request to enable the automatic resizing feature, the computer system (e.g., 14000B) changes the size of the display region from the fifth size to a predetermined size that is based on the sixth size of the representation of the first content (e.g., 14000B in
In some embodiments, changing the size of the representation (e.g., 14086′) of the first content from the third size to the fourth size includes displaying the representation of the first content at a location that was previously occupied by displayed content (e.g., 14030) (e.g., other application windows, desktop user interface, home screen user interface) that was not included in the display region (e.g., 14170) before changing the size of the representation of the first content from the third size to the fourth size (e.g., changing (e.g., increasing) the size of the representation of the first content includes hiding portions of other displayed content with at least a portion of the representation of the first content).
In some embodiments, changing the size of the representation (e.g., 14086′) of the first content from the third size to the fourth size includes displaying content (e.g., 14030) other than the representation of the first content (e.g., other application windows, desktop user interface, home screen user interface) at a location that was previously included in the display region (e.g., 14170) before changing the size of the representation of the first content from the third size to the fourth size (e.g., changing (e.g., decreasing) the size of the representation of the first content includes revealing portions of other displayed content).
In some embodiments, displaying the representation (e.g., 14086′) of the first content includes displaying the representation of the first content without displaying a type of graphical object (e.g., 14045A) (e.g., ancillary user interface objects associated with the first content such as menus, popovers, error messages, and/or print screens) that is displayed with the first content (e.g., 14086) at the external computer system (e.g., 14000A). Displaying the representation of the first content without displaying the type of graphical object that is displayed with the first content at the external computer system provides privacy benefits to a user of the external computer system by preventing accidental sharing of content, and enhances the visibility of the shared content for a user of the computer system and reduces the number of computations performed at the computer system by eliminating the display of extraneous user interface elements at the computer system. Reducing the number of computations at the computer system preserves computational resources of the computer system, enhances the operability of the computer system, and makes the user-system interface more efficient (e.g., by helping the user to provide proper inputs and reducing user mistakes when operating/interacting with the computer system) which, additionally, reduces power usage and improves battery life of the computer system by enabling the user to use the system more quickly and efficiently.
Note that details of the processes described above with respect to method 1600 (e.g.,
As described below, method 1700 provides an intuitive way for managing a shared-content session. The method reduces the cognitive burden on a user for managing a shared-content session, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to manage a shared-content session faster and more efficiently conserves power and increases the time between battery charges.
The computer system (e.g., 6000) displays (1702), via the one or more output generation components (e.g., 6001) (and while the computer system is connected to a real-time communication session), a first user interface (e.g., 6088) (e.g., an application window, a picture-in-picture (PiP) window, a video application interface, a web browser interface, a music application interface), including concurrently displaying, in the first user interface: a view (e.g., 6150B) (1704) of content (e.g., video content) of a shared-content session (e.g., content in an active shared-content session) that is displayed overlaying a background user interface (e.g., 6088 and/or the application icons on 6088); and a first representation (e.g., 6243) (1706) (e.g., a graphical object, a tile, a video feed, an avatar, and/or an identifier (e.g., name or initials)) of a participant (e.g., a most-active participant or most recently active participant) of a real-time (e.g., audio and/or video) communication session (e.g., an active real-time communication session to which the computer system is connected), wherein the first representation of the participant of the real-time communication session is displayed at a first respective location (e.g., top-left corner of 6150B) (e.g., a fixed location) relative to the view of the content of the shared-content session.
In some embodiments, the first user interface is overlaid on a home screen (e.g., 6018 or 6088) and/or another user interface (e.g., one or more windows of one or more other applications). In some embodiments, the representation of the participant (e.g., 6295 or 6243) of the real-time communication session is overlaid on the view of the content of the shared-content session (e.g., 6150A or 6150B). In some embodiments, the user interface and/or the view of the content can be moved (e.g., as shown in
While the computer system (e.g., 6000) displays the first user interface, the computer system (e.g., 6000) receives (1708) a request (e.g., 6592) (e.g., an input) to move the view of the content in the first user interface.
In response to receiving the request to move the view of the content, the computer system (e.g., 6000) moves (1710) the view of the content in accordance with the request (e.g., in accordance with a direction and/or magnitude specified by the input) and moves the first representation of the participant so that the first representation of the participant is displayed at the first respective location relative to the view of the content of the shared-content session (e.g., movement of 6150B and 6243 in
After moving the view of the content and the first representation of the participant, the computer system (e.g., 6000) detects (1712) a request (e.g., 6602) to cease to display the view of the content of the shared-content session over the background user interface (while the computer system is connected to the real-time communication session).
In response to detecting the request to cease to display the view of the content of the shared-content session over the background user interface, the computer system (e.g., 6000) displays (1714), via the one or more output generation components (e.g., 6001), a view of the content (e.g., 6150B in
In some embodiments, while displaying the view of the content that is not displayed overlaying the background user interface (e.g., 6150A in
In some embodiments, in response to detecting the request to cease to display the view of the content of the shared-content session over the background user interface, the computer system (e.g., 6000) displays, via the one or more output generation components (e.g., 6001) (and, optionally, concurrently with the view of the content that is not displayed over the background user interface), a second representation (e.g., 6245) of the participant at a second respective location (e.g., below-right) relative to the view of the content (e.g., 6150B in
In some embodiments, the background user interface is a system user interface (e.g., 400 or 6088) (e.g., a home screen; a desktop user interface; user interface 400; a user interface that is provided and/or controlled by an operating system of the computer system; and/or a displayed user interface that includes user interface objects corresponding to respective applications, and when a user interface object is activated, the computer system displays the respective application corresponding to the activated user interface object). Concurrently displaying the view of content of the shared-content session, overlaid on a system user interface, and the first representation of the participant of the real-time communication session allows the user to perform operations provided by the system user interface (e.g., launching applications and/or navigating menus) while viewing the content and maintaining context of the real-time communication session without having to navigate out of a user interface dedicated solely to the real-time communication session (e.g., a video communication application) or the content of the shared-content session, which reduces the number of inputs needed to perform an operation.
In some embodiments, the background user interface is an application user interface (e.g., 6004B in
In some embodiments, while concurrently 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 participant at the first respective location relative to the view of the content of the shared-content session, the computer system (e.g., 6000) detects a request (e.g., 6486) to change the background user interface from a first background user interface (e.g., 6088-1) to a second background user interface (e.g., 6496) (e.g., a different application or home screen) different from the first background user interface. 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 computer system concurrently displays: the view of the content of the shared-content session overlaid on the second background user interface (e.g., 6150B in
In some embodiments, when the background user interface is switched (e.g., as shown on device 6000B in
In some embodiments, while displaying the view of the content of the shared-content session overlaying the background user interface (e.g., 6150B in
In some embodiments, the request (e.g., 6594) to cease to display the view (e.g., 6150A in
In some embodiments, while displaying the first user interface (e.g., 6170A) of the video communication application, the computer system (e.g., 6000) displays, in the first user interface of the video communication application, a plurality of representations (e.g., 6172 and 6174) of participants in the real-time communication session. Displaying a plurality of representations of participants in the real-time communication session in the first user interface of the video communication application provides additional context with respect to the real-time communication session while maintaining display of the content of the shared-content session, which provides improved visual feedback.
In some embodiments, the request to cease to display the view of the content of the shared-content session over the background user interface (e.g., 6570) includes (e.g., is) a request (e.g., 6584 in
In some embodiments, in response to detecting the request (e.g., 6584) to display the content in an expanded display mode: the computer system (e.g., 6000) displays the content (e.g., 6574) in a second user interface that is in an expanded display mode (e.g., 6574 in
In some embodiments, while displaying the third representation (e.g., 6235 in
In some embodiments, while displaying the third representation of the participant of the real-time communication session over the second user interface (e.g., 6235 in
In some embodiments, while displaying, in the first user interface (e.g., 6088), the view of the content of the shared-content session overlaid on the background user interface (e.g., 6150B in
In some embodiments, while displaying, in the first user interface (e.g., 6018 in
In some embodiments, while displaying, in the first user interface, the view (e.g., 6150A or 6150B in
In some embodiments, the computer system (e.g., 6000) receives a request (e.g., 6634) to move the fourth representation (e.g., 6245) of the participant of the real-time communication session in the first user interface. In some embodiments, in response to receiving the request to move the fourth representation of the participant of the real-time communication session, the computer system (e.g., 6000) moves 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 (e.g., from the position of 6245 in
In some embodiments, while displaying, in the first user interface, the fourth representation (e.g., 6245 in
In some embodiments, after ceasing to display the fourth representation of the participant of the real-time communication session (and, optionally, while no representations of participants of the real-time communication session are displayed in the first user interface): the computer system (e.g., 6000) receives an indication (e.g., video feed turned on via input 6638) that a participant (or device associated with a participant) of the real-time communication session is providing (e.g., transmitting) video to the real-time communication session (e.g., the real-time communication session includes video from at least one of the participants; one or more participants have enabled or unmuted their respective outgoing video feed; or a participant has started sharing video).
In some embodiments, after ceasing to display the fourth representation of the participant of the real-time communication session (and, optionally, while no representations of participants of the real-time communication session are displayed in the first user interface): in response to receiving the indication that a participant of the real-time communication session is providing video to the real-time communication session, the computer system (e.g., 6000) displays (e.g., re-displaying) a fifth representation (e.g., the second representation) of a participant of the real-time communication session (e.g., 6245 in
In some embodiments, the fifth representation of a participant of the real-time communication session includes (e.g., at least initially) a representation of a participant (e.g., 6245 in
In some embodiments, the fifth representation includes a representation of the participant (e.g., 6245 in
In some embodiments, the computer system (e.g., 6000) detects, via the one or more input devices (e.g., 6001, 6002, and/or 6003), an input (e.g., 6594 in
In some embodiments, 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 participant of the real-time communication session at the first respective location relative to the view of the content of the shared-content session, the computer system (e.g., 6000) detects, via the one or more input devices (e.g., 6001, 6002, and/or 6003), an input. In some embodiments, in response to detecting the input: in accordance with a determination that the input is directed to the view of the content (e.g., the input is 6584 in
In some embodiments, while displaying the first user interface, the computer system (e.g., 6000) receives a first request (e.g., 6596 in
In some embodiments, while displaying the first user interface, the computer system (e.g., 6000) receives a second request (e.g., 6596 in
Note that details of the processes described above with respect to method 1700 (e.g.,
As described below, method 1800 provides an intuitive way for managing a shared-content session. The method reduces the cognitive burden on a user for managing a shared-content session, thereby creating a more efficient human-machine interface. For battery-operated computing devices, enabling a user to manage a shared-content session faster and more efficiently conserves power and increases the time between battery charges.
The computer system (e.g., 6000) displays (1802), via the one or more output generation components (e.g., 6001), a user interface (e.g., 6170) (e.g., a window) of a video communication application, including displaying, concurrently in the user interface of the video communication application: dynamic visual content (1804) (e.g., 6150) (e.g., video content or a shared screen of a shared-content session) (e.g., in a window, such as a picture-in-picture window) and one or more representations (1806) (e.g., 6642 or 6644) (e.g., graphical objects, tiles, video feeds, avatars, and/or identifiers (e.g., names or initials)) of participants of a video communication session, wherein the one or more representations of participants of the video communication session are displayed in a first arrangement (e.g., the arrangement shown in
The computer system (e.g., 6000) detects (1808) a change in size and/or position of the dynamic visual content (e.g., due to input 6654, 6656, 6662, or 6664) that changes an amount of the user interface of the video communication application that is covered by the dynamic video content (e.g., amount of interface 6170 covered by 6150 changes from
In response to detecting the change in size and/or position of the dynamic visual content, the computer system (e.g., 6000) displays (1810), via the one or more output generation components (e.g., 6001), the one or more representations of participants of the video communication session in a second arrangement (e.g., the arrangement shown in
In some embodiments, the change in size and/or position of the dynamic visual content occurs in response to detecting an input (e.g., 6654, 6656, 6662, 6664, 6666, 6668, or 6670) (e.g., a pinch gesture, a de-pinch gesture, or a drag gesture) via the one or more input devices (e.g., 6001, 6002, and/or 6003). In some embodiments, in response to detecting the input, the computer system changes the size and/or position of the dynamic visual content. In some embodiments, a magnitude and/or direction of the change in size and/or position of the dynamic visual content is based on a magnitude and/or direction of the input. In some embodiments, the computer system displays the one or more representations of participants of the video communication session in the second arrangement in response to detecting the input.
In some embodiments, the change in size and/or position of the dynamic visual content (e.g., 6150) occurs in response to receiving (e.g., detecting) an indication that (and/or in accordance with a determination that) an event (e.g., ending playback in
In some embodiments, the change in size and/or position of the dynamic visual content includes a change in size of the dynamic visual content (e.g., reducing the size of 6150A in response to 6666).
In some embodiments, the change in size and/or position of the dynamic visual content includes a change in position of the dynamic visual content (e.g., moving 6150B in response to 6668).
In some embodiments, the change in size and/or position of the dynamic visual content includes the computer system (e.g., 6000) ceasing to display at least a portion of (e.g., some or all of) the dynamic visual content (e.g., in response to input 6654 or 6656) (e.g., at least a portion of the dynamic visual content is hidden and/or no longer displayed). Displaying the one or more representations of participants of the video communication session in a different arrangement in response to detecting that at least a portion of the dynamic visual content has ceased to be displayed allows the computer system to automatically optimize the arrangement of the representations given that display space does not need to be allocated for the dynamic visual content without requiring the user to manually adjust the user interface of the video communication application, which provides improved visual feedback and reduces the number of inputs needed to perform an operation.
In some embodiments, displaying the one or more representations of participants of the video communication session in the second arrangement in the user interface of the video communication application includes the computer system (e.g., 6000) changing a position of (e.g., moving) one or more representations of the participants of the video communication session in the user interface of the video communication application (e.g., 6642 and 6644 change position in
In some embodiments, displaying the one or more representations of participants of the video communication session in the second arrangement in the user interface of the video communication application includes the computer system (e.g., 6000) changing (e.g., increasing or decreasing) a size of one or more representations of the participants of the video communication session in the user interface of the video communication application (e.g., 6642 and 6644 change size in
In some embodiments, displaying the one or more representations of participants of the video communication session in the second arrangement in the user interface of the video communication application includes the computer system (e.g., 6000) changing an aspect ratio of one or more representations of the participants of the video communication session in the user interface of the video communication application (e.g., the aspect ratio of 6645B changes from
In some embodiments, displaying the one or more representations of participants of the video communication session in the second arrangement in the user interface of the video communication application includes the computer system (e.g., 6000) ceasing to display (e.g., removing) one or more representations of the participants of the video communication session in the user interface of the video communication application (e.g., in
In some embodiments, ceasing to display one or more representations of the participants of the video communication session in the user interface of the video communication application includes: in accordance with a determination that the one or more representations of participants of the video communication session are displayed according to a first layout (e.g., the non-grid layout shown on device 6000A in
In some embodiments, detecting the 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 video content occurs while the computer system (e.g., 6000) displays the one or more representations of participants of the video communication session in a third layout (e.g., the arrangement of tiles 6642 in
In some embodiments, displaying the one or more representations of participants of the video communication session in the second arrangement in the user interface of the video communication application includes the computer system (e.g., 6000) changing an aspect ratio (e.g., 1:1 (height to width), 1.25:1, 1.5:1, 1.75:1, or 2:1) of a first representation of a field-of-view of a camera associated with the computer system (e.g., 6000) (e.g., 6645A changes from
In some embodiments, the computer system (e.g., 6000) receives (e.g., detecting via the one or more input devices) a request (e.g., 6668 or 6670) to change the position of the dynamic visual content (e.g., 6150B in
In some embodiments, the user interface of the video communication application includes: a first region (e.g., 6170A-1 or 6170B-1) that includes a first set of representations of participants of the video communication session (e.g., the one or more representations of participants of the video communication session; or a subset of the one or more representations of participants of the video communication session). In some embodiments, the user interface of the video communication application includes: a second region (e.g., 6170A-2 or 6170B-2) (e.g., a region that is visually distinct from the first region and/or does not overlap the first region) that includes a second set of representations of participants of the video communication session (e.g., a subset of the one or more representations of participants of the video communication session; or one or more representations of participants that are not represented by the one or more representations of participants of the video communication session). In some embodiments, the representations of the first set of representations are displayed at a larger size than the representations of the second set of representations (e.g., tiles 6642-1 and 6642-2 are larger than tiles 6642-3 to 6642-6 in
In some embodiments, the user interface of the video communication application includes a second representation (e.g., 6645A or 6645B in
In some embodiments, the computer system (e.g., 6000) ceases to display (e.g., closing, minimizing, or hiding) the user interface of the video communication application (e.g., device 6000B closes interface 6170B in
In some embodiments, the dynamic visual content includes content (e.g., 6150A or 6150B in
In some embodiments, while displaying, in the user interface of the video communication application, the dynamic visual content (e.g., content that is included in a shared-content session, where one or more participants of the video communication are participants of the shared-content session) and the one or more representations of participants of the video communication session (e.g., in the first arrangement or the second arrangement): the computer system (e.g., 6000) displays a shared-content session object (e.g., 6015) that includes information associated with a second shared-content session (e.g., where one or more participants of the video communication are participants of the shared-content session) and/or one or more selectable options that, when selected, cause the computer system (e.g., 6000) to perform a respective function associated with the second shared-content session or the video communication session. In some embodiments, while displaying, in the user interface of the video communication application, the dynamic visual content (e.g., 6150B in
In some embodiments, the shared-content session object (e.g., 6015) is displayed in response to detecting input, e.g., corresponding to selection (e.g., 6236) of the dynamic visual content (e.g., 6150). In some embodiments, displaying the one or more representations of participants of the video communication session in the third arrangement includes changing (e.g., decreasing) the size of one or more of the representations (e.g., 6176 or 6178) of participants of the video communication session, changing an aspect ratio of one or more of the representations of participants of the video communication session, and/or ceasing to display one or more of the representations of participants of the video communication session.
In some embodiments, the shared-content session object (e.g., 6015B) is displayed concurrently with (e.g., includes) a notification (e.g., 6230) that includes information related to the dynamic visual content (e.g., 6150B) (e.g., a name of the content, a title of the content, a playback status of the content, and/or a participant that initiated playback of the content). Displaying a notification that includes information related to the dynamic visual content concurrently with the shared-content session object allows the computer system to provide the user with contextually relevant information about the dynamic visual content, which provides improved visual feedback to the user.
In some embodiments, the shared-content session object (e.g., 6015) includes one or more selectable options (e.g., 6015-1, 6015-4, 6015-5, 6015-6, 6015-7, 6015-8, or 6015-9) that, when selected, cause the computer system (e.g., 6000) to perform a respective function associated with the shared-content session (e.g., to control the dynamic visual content) or the video communication session. Displaying one or more selectable options that, when selected, cause the computer system to perform a respective function associated with the shared-content session or the video communication session provides the user with additional functionality and control over the shared-content session and/or the video communication session, which provides additional control options without cluttering the user interface.
In some embodiments, after displaying the one or more representations of participants of the video communication session in the second arrangement in the user interface of the video communication application (e.g., 6170 in
In some embodiments, after displaying the one or more representations of participants of the video communication session in the second arrangement in the user interface of the video communication application, and while the one or more representations of participants of the video communication session is displayed in a fourth arrangement (e.g., the second arrangement): in response to detecting the second change in size and/or position of the dynamic visual content, the computer system (e.g., 6000) displays, via the one or more output generation components (e.g., 6001), the one or more representations of participants of the video communication session in a fifth arrangement (e.g., the first arrangement) in the user interface of the video communication application (e.g., 6642 or 6644 in
In some embodiments, the computer system (e.g., 6000) detects a change in the video communication session (e.g., expanding 6645A or 6645B in
In some embodiments, while the computer system (e.g., 6000) is connected to an active shared-content session that includes the dynamic visual content: in accordance with a determination that the dynamic visual content is not visible (e.g., 6150A and/or 6150B docked and minimized in
Note that details of the processes described above with respect to method 1800 (e.g.,
The various embodiments provided herein are generally described using devices 6000 and 1400. However, it should be appreciated that other computer systems or devices can be used (in addition to, or in lieu of, devices 6000/1400) to participate in a shared-content session, and that various aspects of a shared-content session can be implemented in different manners across the various devices participating in the shared-content session. For example, a smart speaker, optionally including a display component, can be used to participate in a shared-content session. In some embodiments, inputs at the smart speaker can be provided verbally and, optionally, via a touch input, and outputs can be audio outputs and, optionally, visual outputs provided at a connected display component. As another example, a display component of a head-mounted device (HMD) can be used to display visual aspects of the shared-content session (and a speaker used to produce audio), and inputs can be received by detecting gestures, eye gaze, hand movements, audio inputs, touch inputs, or the like. In some embodiments, the user interfaces depicted in the figures can be displayed in an extended reality environment such as augmented reality or virtual reality. For example, video tiles, windows, and/or other display regions shown in the figures can be displayed suspended in a three-dimensional environment. As another example, the representations of users or participants can be displayed as simulated three-dimensional avatars or two-dimensional avatars positioned around a three-dimensional environment rather than video tiles or windows in a video conference application. Additionally, embodiments are described herein using various types of inputs such as taps, drags, clicks, and hover gestures, however, it should be appreciated that the described embodiments can be modified to respond to other forms of input including gestures, eye gaze, hand movements, audio inputs, and the like. Additionally, different devices with different capabilities can be combined in a single shared-content session, for example a smartphone, tablet, laptop computer, desktop computer, smart speaker, smart TV, headphones or earbuds, HMD, and/or smart watch (or a subset thereof) could participate in the same shared-content session with the different devices participating in different manners according to the capabilities of the device (e.g., the HMD presenting content in a simulated three-dimensional environment or an augmented reality environment, the smart speaker providing audio outputs and inputs, the headphones providing spatial audio outputs and audio inputs, the laptop and desktop computers, smartphone and tablet providing audio and visual inputs and outputs, the smart TV providing audio and visual outputs and audio inputs (or audio and visual inputs)).
The foregoing description, for purpose of explanation, has been described with reference to specific embodiments. However, the illustrative discussions above are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in view of the above teachings. The embodiments were chosen and described in order to best explain the principles of the techniques and their practical applications. Others skilled in the art are thereby enabled to best utilize the techniques and various embodiments with various modifications as are suited to the particular use contemplated.
Although the disclosure and examples have been fully described with reference to the accompanying drawings, it is to be noted that various changes and modifications will become apparent to those skilled in the art. Such changes and modifications are to be understood as being included within the scope of the disclosure and examples as defined by the claims.
As described above, one aspect of the present technology is the gathering and use of data available from various sources to improve the delivery to users of content for a shared-content session. The present disclosure contemplates that in some instances, this gathered data may include personal information data that uniquely identifies or can be used to contact or locate a specific person. Such personal information data can include demographic data, location-based data, telephone numbers, email addresses, twitter IDs, home addresses, data or records relating to a user's health or level of fitness (e.g., vital signs measurements, medication information, exercise information), date of birth, or any other identifying or personal information.
The present disclosure recognizes that the use of such personal information data, in the present technology, can be used to the benefit of users. For example, the personal information data can be used to deliver targeted content that is of greater interest to the user. Accordingly, use of such personal information data enables users to have calculated control of the delivered content. Further, other uses for personal information data that benefit the user are also contemplated by the present disclosure. For instance, health and fitness data may be used to provide insights into a user's general wellness, or may be used as positive feedback to individuals using technology to pursue wellness goals.
The present disclosure contemplates that the entities responsible for the collection, analysis, disclosure, transfer, storage, or other use of such personal information data will comply with well-established privacy policies and/or privacy practices. In particular, such entities should implement and consistently use privacy policies and practices that are generally recognized as meeting or exceeding industry or governmental requirements for maintaining personal information data private and secure. Such policies should be easily accessible by users, and should be updated as the collection and/or use of data changes. Personal information from users should be collected for legitimate and reasonable uses of the entity and not shared or sold outside of those legitimate uses. Further, such collection/sharing should occur after receiving the informed consent of the users. Additionally, such entities should consider taking any needed steps for safeguarding and securing access to such personal information data and ensuring that others with access to the personal information data adhere to their privacy policies and procedures. Further, such entities can subject themselves to evaluation by third parties to certify their adherence to widely accepted privacy policies and practices. In addition, policies and practices should be adapted for the particular types of personal information data being collected and/or accessed and adapted to applicable laws and standards, including jurisdiction-specific considerations. For instance, in the US, collection of or access to certain health data may be governed by federal and/or state laws, such as the Health Insurance Portability and Accountability Act (HIPAA); whereas health data in other countries may be subject to other regulations and policies and should be handled accordingly. Hence different privacy practices should be maintained for different personal data types in each country.
Despite the foregoing, the present disclosure also contemplates embodiments in which users selectively block the use of, or access to, personal information data. That is, the present disclosure contemplates that hardware and/or software elements can be provided to prevent or block access to such personal information data. For example, in some embodiments, the present technology can be configured to allow users to select to “opt in” or “opt out” of participation in the collection of personal information data during registration for services or anytime thereafter. In another example, the present technology can be configured to allow users to prevent sharing of the personal information that may appear on the user's screen (e.g., such as in a screen-sharing embodiment). In addition to providing “opt in” and “opt out” options, the present disclosure contemplates providing notifications relating to the access or use of personal information. For instance, a user may be notified upon downloading an app that their personal information data will be accessed and then reminded again just before personal information data is accessed by the app.
Moreover, it is the intent of the present disclosure that personal information data should be managed and handled in a way to minimize risks of unintentional or unauthorized access or use. Risk can be minimized by limiting the collection of data and deleting data once it is no longer needed. In addition, and when applicable, including in certain health related applications, data de-identification can be used to protect a user's privacy. De-identification may be facilitated, when appropriate, by removing specific identifiers (e.g., date of birth, etc.), controlling the amount or specificity of data stored (e.g., collecting location data a city level rather than at an address level), controlling how data is stored (e.g., aggregating data across users), and/or other methods.
Therefore, although the present disclosure broadly covers use of personal information data to implement one or more various disclosed embodiments, the present disclosure also contemplates that the various embodiments can also be implemented without the need for accessing such personal information data. That is, the various embodiments of the present technology are not rendered inoperable due to the lack of all or a portion of such personal information data. For example, content can be selected and delivered to users by inferring preferences based on non-personal information data or a bare minimum amount of personal information, such as the content being requested by the device associated with a user, other non-personal information available to the content delivery services, or publicly available information.
This application claims the benefit of priority of U.S. Provisional Patent Application Ser. No. 63/189,156, entitled “SHARED-CONTENT SESSION USER INTERFACES,” filed May 15, 2021; and U.S. Provisional Patent Application Ser. No. 63/197,445, entitled “SHARED-CONTENT SESSION USER INTERFACES,” filed Jun. 6, 2021. The contents of these applications are hereby incorporated by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
63197445 | Jun 2021 | US | |
63189156 | May 2021 | US |