Skip to content

Conversation

@Antreesy
Copy link
Contributor

@Antreesy Antreesy commented Apr 20, 2023

☑️ Resolves

🖼️ Screenshots

For users, depending in how many actors are typing
image
image
image
For guests (they don't have access to participants information, so it's impossible to show typing actor)
image
Settings
image

🚧 Tasks

API part

  • When the chat input is non empty a signaling message is sent in periodical interval
  • When the signaling messages is received a small max contrast line is shown above the chat input
  • Ability to disable sending / receiving of signals (like reading status)

Visual part

  • The line is shown inbetween the last message and the input field, not shifting any messages above (in case people stop typing)
  • It includes avatar(s) and a text in --color-text-maxcontrast, with the name in bold
  • Single person indicator centers the small avatar horizontally with the bigger avatars in the chat. Text is "Name is typing"
  • Multiple people are simply shown comma-separated and with the overlapped avatars, up until 3 people like: "Marco and Nimisha are typing"
  • For more than 3 people, only 3 keep showing as avatars and full name (could be either the ones who have most recently typed or have started typing first, whatever is more performant), and ends with "and X others are typing" like "Nimisha, Marco, Joas and 3 others are typing"

Overall

  • Visual check
  • Code review
  • Test coverage

🏁 Checklist

@Antreesy Antreesy added this to the 💙 Next Major (27) milestone Apr 20, 2023
@Antreesy Antreesy self-assigned this Apr 20, 2023
@Antreesy Antreesy force-pushed the feature/9271/typing-indicators branch from b0f1a73 to d72ce7a Compare April 21, 2023 12:50
@Antreesy Antreesy force-pushed the feature/9271/typing-indicators branch from d72ce7a to 6510aa5 Compare May 5, 2023 20:54
@Antreesy
Copy link
Contributor Author

Antreesy commented May 5, 2023

@Antreesy Antreesy requested review from ShGKme and marcoambrosini May 5, 2023 21:03
@Antreesy Antreesy changed the title Typing indicators in chat [web draft] Typing indicators in chat [web client] May 5, 2023
@Antreesy Antreesy marked this pull request as ready for review May 5, 2023 21:03
return 'X'
}
const customName = this.name !== t('spreed', 'Guest') ? this.name : '?'
const customName = this.name && this.name !== t('spreed', 'Guest') ? this.name : '?'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this an effective change? What is the difference and is it needed to do this on stable26 and others?

Copy link
Contributor Author

@Antreesy Antreesy May 8, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this.name?trim() && check that name is non-empty, like "" or " "
Without fix it breaks avatars for recepients, if, for example, guest will set a name like this
image image

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah, then I guess it should be backported

Antreesy added 6 commits May 8, 2023 17:31
Signed-off-by: Maksim Sukharev <[email protected]>

- declare translatePlural in d.ts file, improve indicator message
- remove HTML tags from direct translations
- escape HTML markdown in participant names
Signed-off-by: Maksim Sukharev <[email protected]>
Signed-off-by: Maksim Sukharev <[email protected]>
Signed-off-by: Maksim Sukharev <[email protected]>
@Antreesy Antreesy force-pushed the feature/9271/typing-indicators branch from 015e587 to f3a0c4f Compare May 8, 2023 15:35
@Antreesy
Copy link
Contributor Author

Antreesy commented May 8, 2023

Rebased on top of signaling API, fix capabilities check visibility (in fixup commit)

@Antreesy Antreesy requested a review from nickvergessen May 8, 2023 15:37
This was referenced May 9, 2023
Copy link
Member

@nickvergessen nickvergessen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems to work fine

@Antreesy Antreesy merged commit e86f0ca into master May 9, 2023
@Antreesy Antreesy deleted the feature/9271/typing-indicators branch May 9, 2023 08:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Frontend "Typing indicators"

4 participants