Formalize zero-width emote implementation (#4314)

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
This commit is contained in:
Daniel Sage
2023-03-18 12:30:08 -04:00
committed by GitHub
parent db97a14cdc
commit 0acbc0d2c3
18 changed files with 947 additions and 146 deletions
+20
View File
@@ -687,6 +687,26 @@ void MessageBuilder::append(std::unique_ptr<MessageElement> element)
this->message().elements.push_back(std::move(element));
}
bool MessageBuilder::isEmpty() const
{
return this->message_->elements.empty();
}
MessageElement &MessageBuilder::back()
{
assert(!this->isEmpty());
return *this->message().elements.back();
}
std::unique_ptr<MessageElement> MessageBuilder::releaseBack()
{
assert(!this->isEmpty());
auto ptr = std::move(this->message().elements.back());
this->message().elements.pop_back();
return ptr;
}
QString MessageBuilder::matchLink(const QString &string)
{
LinkParser linkParser(string);