One or more computer-readable storage media comprising instructions that, when executed by a client device, cause the client device to perform operations using a communication module, the operations comprising:
- initiating a communication session between two or more initial participants through a communication service provided via a service provider;
- outputting a user interface configured to facilitate exchange of chat messages between the two or more initial participants during the communication session, the user interface including a session display portion;
- displaying in the session display portion of the user interface a representation of a plurality of chat messages exchanged between the two or more initial participants;
- detecting when a first new participant joins the communication session;
- and
- responsive to the detecting when the first new participant joins the communication session, causing display of a first history control element in the user interface, the first history control element configured to visually identify a first time window within the representation, the first time window defining which of the plurality of messages exchanged prior to the first new participant joining the communication session are exposed to the first new participant and operable to selectively modify which of the plurality of messages are exposed to the first new participant;
- detecting when a second new participant joins the communication session;
- responsive to the detecting when the second new participant joins the communication session, causing display of a second history control element different than the first history control element in the user interface, the second history control element being displayed contemporaneously with the display of the first history control element, the second history control element configured to visually identify a second time window that is different from the first time window within the representation, the second time window defining which of the plurality of messages exchanged prior to the second new participant joining the communication session are exposed to the second new participant and operable to selectively modify which of the plurality of messages are exposed to the second new participant, wherein responsive to the first and second new participants joining the communication session, the first and second history control elements are initially positioned by default at initial locations within the session display portion to indicate, respectively, that all messages in the plurality of messages exchanged between the initial participants prior to the addition of the first new participant should not be exposed to the first new participant and to further indicate that all messages in the plurality of messages exchanged between the initial participants prior to the addition of the second new participant should not be exposed to the second new participant;
- moving the first and second history control elements from the initial locations to first and second locations within the session display portion, respectively, the movement of the first history control element to the first location causing an adjusting of the first time window to indicate a selection of a first set of messages from the plurality of chat messages, the movement of the second history control element to the second location causing an adjusting of the second time window to indicate a selection of a second set of messages from the plurality of chat messages, the first and second locations being different to indicate that the first and second sets of messages are different;
- exposing the selected first set of messages to the first new participant during the communication session in accordance with the first time window, the exposing the selected first set of messages comprising preventing one or more messages exchanged between the initial participants prior to the first new participant joining the communication session from being exposed to the first new participant in accordance with the first time window;
- and
- exposing the selected second set of messages to the second new participant during the communication session in accordance with the second time window.