From 0398c846f6836b734bf3432696df1e04e86d8867 Mon Sep 17 00:00:00 2001 From: Nicolas Werner <nicolas.werner@hotmail.de> Date: Sun, 28 Jul 2019 18:13:16 +0200 Subject: [PATCH] Add 'and' to typing display --- resources/langs/nheko_de.ts | 17 ++++++++--------- resources/langs/nheko_el.ts | 17 ++++++++--------- resources/langs/nheko_en.ts | 17 ++++++++--------- resources/langs/nheko_fi.ts | 17 ++++++++--------- resources/langs/nheko_fr.ts | 17 ++++++++--------- resources/langs/nheko_nl.ts | 17 ++++++++--------- resources/langs/nheko_pl.ts | 18 +++++++++--------- resources/langs/nheko_ru.ts | 18 +++++++++--------- resources/langs/nheko_zh_CN.ts | 16 +++++++--------- src/TypingDisplay.cpp | 17 +++++++++++------ src/timeline/TimelineItem.h | 2 +- 11 files changed, 85 insertions(+), 88 deletions(-) diff --git a/resources/langs/nheko_de.ts b/resources/langs/nheko_de.ts index 1f856b808..80a50ae2f 100644 --- a/resources/langs/nheko_de.ts +++ b/resources/langs/nheko_de.ts @@ -494,15 +494,14 @@ </context> <context> <name>TypingDisplay</name> - <message> - <location filename="../../src/TypingDisplay.cpp" line="+46"/> - <source> is typing</source> - <translation> tippt</translation> - </message> - <message> - <location line="+2"/> - <source> are typing</source> - <translation> tippen</translation> + <message numerus="yes"> + <location filename="../../src/TypingDisplay.cpp" line="+37"/> + <source>%1 and %2 are typing</source> + <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> + <translation> + <numerusform>%1%2 tippt</numerusform> + <numerusform>%1 und %2 tippen</numerusform> + </translation> </message> </context> <context> diff --git a/resources/langs/nheko_el.ts b/resources/langs/nheko_el.ts index e50aadad7..ead1ed690 100644 --- a/resources/langs/nheko_el.ts +++ b/resources/langs/nheko_el.ts @@ -494,15 +494,14 @@ </context> <context> <name>TypingDisplay</name> - <message> - <location filename="../../src/TypingDisplay.cpp" line="+46"/> - <source> is typing</source> - <translation> πληκτÏολογεί</translation> - </message> - <message> - <location line="+2"/> - <source> are typing</source> - <translation> πληκτÏολογοÏν</translation> + <message numerus="yes"> + <location filename="../../src/TypingDisplay.cpp" line="+37"/> + <source>%1 and %2 are typing</source> + <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> + <translation type="unfinished"> + <numerusform></numerusform> + <numerusform></numerusform> + </translation> </message> </context> <context> diff --git a/resources/langs/nheko_en.ts b/resources/langs/nheko_en.ts index e031c4ec0..0ab8d6d85 100644 --- a/resources/langs/nheko_en.ts +++ b/resources/langs/nheko_en.ts @@ -494,15 +494,14 @@ </context> <context> <name>TypingDisplay</name> - <message> - <location filename="../../src/TypingDisplay.cpp" line="+46"/> - <source> is typing</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+2"/> - <source> are typing</source> - <translation type="unfinished"></translation> + <message numerus="yes"> + <location filename="../../src/TypingDisplay.cpp" line="+37"/> + <source>%1 and %2 are typing</source> + <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> + <translation> + <numerusform>%1%2 is typing</numerusform> + <numerusform>%1 and %2 are typing</numerusform> + </translation> </message> </context> <context> diff --git a/resources/langs/nheko_fi.ts b/resources/langs/nheko_fi.ts index 2baba55db..95403f3eb 100644 --- a/resources/langs/nheko_fi.ts +++ b/resources/langs/nheko_fi.ts @@ -494,15 +494,14 @@ </context> <context> <name>TypingDisplay</name> - <message> - <location filename="../../src/TypingDisplay.cpp" line="+46"/> - <source> is typing</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+2"/> - <source> are typing</source> - <translation type="unfinished"></translation> + <message numerus="yes"> + <location filename="../../src/TypingDisplay.cpp" line="+37"/> + <source>%1 and %2 are typing</source> + <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> + <translation type="unfinished"> + <numerusform></numerusform> + <numerusform></numerusform> + </translation> </message> </context> <context> diff --git a/resources/langs/nheko_fr.ts b/resources/langs/nheko_fr.ts index 355c43259..9c7f25c6a 100644 --- a/resources/langs/nheko_fr.ts +++ b/resources/langs/nheko_fr.ts @@ -495,15 +495,14 @@ </context> <context> <name>TypingDisplay</name> - <message> - <location filename="../../src/TypingDisplay.cpp" line="+46"/> - <source> is typing</source> - <translation> est en train d'écrire</translation> - </message> - <message> - <location line="+2"/> - <source> are typing</source> - <translation> sont en train d'écrire</translation> + <message numerus="yes"> + <location filename="../../src/TypingDisplay.cpp" line="+37"/> + <source>%1 and %2 are typing</source> + <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> + <translation type="unfinished"> + <numerusform></numerusform> + <numerusform></numerusform> + </translation> </message> </context> <context> diff --git a/resources/langs/nheko_nl.ts b/resources/langs/nheko_nl.ts index db56dc0fb..dbf81401a 100644 --- a/resources/langs/nheko_nl.ts +++ b/resources/langs/nheko_nl.ts @@ -494,15 +494,14 @@ </context> <context> <name>TypingDisplay</name> - <message> - <location filename="../../src/TypingDisplay.cpp" line="+46"/> - <source> is typing</source> - <translation> is aan het typen</translation> - </message> - <message> - <location line="+2"/> - <source> are typing</source> - <translation> zijn aan het typen</translation> + <message numerus="yes"> + <location filename="../../src/TypingDisplay.cpp" line="+37"/> + <source>%1 and %2 are typing</source> + <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> + <translation type="unfinished"> + <numerusform></numerusform> + <numerusform></numerusform> + </translation> </message> </context> <context> diff --git a/resources/langs/nheko_pl.ts b/resources/langs/nheko_pl.ts index 34a4ed264..f4cbfd56e 100644 --- a/resources/langs/nheko_pl.ts +++ b/resources/langs/nheko_pl.ts @@ -494,15 +494,15 @@ </context> <context> <name>TypingDisplay</name> - <message> - <location filename="../../src/TypingDisplay.cpp" line="+46"/> - <source> is typing</source> - <translation> pisze</translation> - </message> - <message> - <location line="+2"/> - <source> are typing</source> - <translation> piszÄ…</translation> + <message numerus="yes"> + <location filename="../../src/TypingDisplay.cpp" line="+37"/> + <source>%1 and %2 are typing</source> + <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> + <translation type="unfinished"> + <numerusform></numerusform> + <numerusform></numerusform> + <numerusform></numerusform> + </translation> </message> </context> <context> diff --git a/resources/langs/nheko_ru.ts b/resources/langs/nheko_ru.ts index afe36ef94..f31b23cf0 100644 --- a/resources/langs/nheko_ru.ts +++ b/resources/langs/nheko_ru.ts @@ -494,15 +494,15 @@ </context> <context> <name>TypingDisplay</name> - <message> - <location filename="../../src/TypingDisplay.cpp" line="+46"/> - <source> is typing</source> - <translation> печатает</translation> - </message> - <message> - <location line="+2"/> - <source> are typing</source> - <translation> печатают</translation> + <message numerus="yes"> + <location filename="../../src/TypingDisplay.cpp" line="+37"/> + <source>%1 and %2 are typing</source> + <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> + <translation type="unfinished"> + <numerusform></numerusform> + <numerusform></numerusform> + <numerusform></numerusform> + </translation> </message> </context> <context> diff --git a/resources/langs/nheko_zh_CN.ts b/resources/langs/nheko_zh_CN.ts index 607b2ba95..8da7c475f 100644 --- a/resources/langs/nheko_zh_CN.ts +++ b/resources/langs/nheko_zh_CN.ts @@ -494,15 +494,13 @@ </context> <context> <name>TypingDisplay</name> - <message> - <location filename="../../src/TypingDisplay.cpp" line="+46"/> - <source> is typing</source> - <translation> æ£åœ¨æ‰“å—</translation> - </message> - <message> - <location line="+2"/> - <source> are typing</source> - <translation> æ£åœ¨æ‰“å—</translation> + <message numerus="yes"> + <location filename="../../src/TypingDisplay.cpp" line="+37"/> + <source>%1 and %2 are typing</source> + <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> </message> </context> <context> diff --git a/src/TypingDisplay.cpp b/src/TypingDisplay.cpp index 6059601d0..43fabcd89 100644 --- a/src/TypingDisplay.cpp +++ b/src/TypingDisplay.cpp @@ -33,6 +33,14 @@ TypingDisplay::setUsers(const QStringList &uid) text_.clear(); + QString temp = text_ += + tr("%1 and %2 are typing", + "Multiple users are typing. First argument is a comma separated list of potentially " + "multiple users. Second argument is the last user of that list. (If only one user is " + "typing, %1 is empty. You should still use it in your string though to silence Qt " + "warnings.)", + uid.size()); + if (uid.isEmpty()) { hide(); update(); @@ -40,12 +48,9 @@ TypingDisplay::setUsers(const QStringList &uid) return; } - text_ = uid.join(", "); - - if (uid.size() == 1) - text_ += tr(" is typing"); - else if (uid.size() > 1) - text_ += tr(" are typing"); + QStringList uidWithoutLast = uid; + uidWithoutLast.pop_back(); + text_ = temp.arg(uidWithoutLast.join(", ")).arg(uid.back()); show(); update(); diff --git a/src/timeline/TimelineItem.h b/src/timeline/TimelineItem.h index a3294d3f0..fe354000e 100644 --- a/src/timeline/TimelineItem.h +++ b/src/timeline/TimelineItem.h @@ -277,7 +277,7 @@ private: QFutureWatcher<QString> *colorGenerating_; QString event_id_; - mtx::events::MessageType message_type_ = mtx::events::MessageType::Unknown; + mtx::events::MessageType message_type_ = mtx::events::MessageType::Unknown; QString room_id_; DescInfo descriptionMsg_; -- GitLab