Closed IS2511 closed 2 years ago
Just as a note, while we call them zero width emotes both in chat and in code, they are technically full width emote with a X margin equal to their negative width plus the width of a space - that's why they behave like this.
Changes would need to be made to the text-wrapping code to take into account the MessageElementFlag::ZeroWidthEmote
when doing the MessageLayoutContainer::fitsInLine
call
This issue is probably related - if you post one of those emotes at the beginning of the message without another emote to put it onto, it gets displayed on top of the username
This issue is probably related - if you post one of those emotes at the beginning of the message without another emote to put it onto, it gets displayed on top of the username
This was mentioned in #1433 and even though it's unintended I think it presents more options for creative use than issues, especially with some 7tv zero-width emotes relying on this "bug". Even though that's a third party thing and doesn't present issues in this project specifically, I still think it should be considered since any changes made to zero-width emotes here would affect the way 7tv zero-width emotes work in their fork as well.
Describe your issue Zero-width emotes can't be last on line when text wrapped. See screenshot
Screenshots Right most row of pepeL emotes is not covered in cvHazmat. The cvHazmat emotes instead are wrapped to new line
OS and Chatterino Version OS:
Linux mainPC 5.10.0-8parrot1-amd64 #1 SMP Debian 5.10.46-8parrot1 (2021-07-21) x86_64 GNU/Linux
Chatterino:Chatterino 7.3.3 (commit 20a7127)