mirror of
https://github.com/Nheko-Reborn/nheko.git
synced 2024-11-26 13:08:48 +03:00
Merge pull request #131 from adasauce/shh
Add support for more m.room.events in timeline
This commit is contained in:
commit
005ed00d67
13 changed files with 813 additions and 111 deletions
|
@ -277,6 +277,11 @@
|
||||||
<source>removed topic</source>
|
<source>removed topic</source>
|
||||||
<translation>Raumthema wurde entfernt.</translation>
|
<translation>Raumthema wurde entfernt.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+6"/>
|
||||||
|
<source>%1 created and configured room: %2</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Placeholder</name>
|
<name>Placeholder</name>
|
||||||
|
@ -474,7 +479,7 @@
|
||||||
<context>
|
<context>
|
||||||
<name>TimelineModel</name>
|
<name>TimelineModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/timeline/TimelineModel.cpp" line="+711"/>
|
<location filename="../../src/timeline/TimelineModel.cpp" line="+714"/>
|
||||||
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
||||||
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
||||||
<translation>-- verschlüsselter Event (keine Schlüssel zur Entschlüsselung gefunden) --</translation>
|
<translation>-- verschlüsselter Event (keine Schlüssel zur Entschlüsselung gefunden) --</translation>
|
||||||
|
@ -538,12 +543,57 @@
|
||||||
</translation>
|
</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+96"/>
|
<location line="+68"/>
|
||||||
|
<source>%1 opened the room to the public</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 made this room require and invitation to join</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room open to guests</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 has closed the room to guest access</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room history world readable. Events may be now read by non-joined people</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+4"/>
|
||||||
|
<source>%1 set the room history visible to members from this point on</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they were invited</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they joined the room</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+22"/>
|
||||||
|
<source>%1 has changed the room's permissions.</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+48"/>
|
||||||
<source>%1 was invited.</source>
|
<source>%1 was invited.</source>
|
||||||
<translation>%1 wurde eingeladen.</translation>
|
<translation>%1 wurde eingeladen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+9"/>
|
<location line="+11"/>
|
||||||
<source>%1 changed their display name and avatar.</source>
|
<source>%1 changed their display name and avatar.</source>
|
||||||
<translation>%1 hat den Anzeigenamen und Avatar geändert.</translation>
|
<translation>%1 hat den Anzeigenamen und Avatar geändert.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -563,7 +613,7 @@
|
||||||
<translation>%1 hat den Raum betreten.</translation>
|
<translation>%1 hat den Raum betreten.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+7"/>
|
<location line="+9"/>
|
||||||
<source>%1 rejected their invite.</source>
|
<source>%1 rejected their invite.</source>
|
||||||
<translation>%1 hat die Einladung abgewiesen.</translation>
|
<translation>%1 hat die Einladung abgewiesen.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -600,16 +650,21 @@
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+2"/>
|
||||||
<source>%1 left after having already left!</source>
|
<source>%1 left after having already left!</source>
|
||||||
<comment>This is a leave event after the user already left and shouln't happen apart from state resets</comment>
|
<comment>This is a leave event after the user already left and shouldn't happen apart from state resets</comment>
|
||||||
<translation>%1 hat den Raum verlassen.</translation>
|
<translation type="unfinished">%1 hat den Raum verlassen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+6"/>
|
<location line="+7"/>
|
||||||
<source>%1 was banned.</source>
|
<source>%1 was banned</source>
|
||||||
<translation>%1 wurde gebannt.</translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+8"/>
|
||||||
|
<source> Reason: %1</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="-5"/>
|
||||||
<source>%1 knocked.</source>
|
<source>%1 knocked.</source>
|
||||||
<translation>%1 hat angeklopft.</translation>
|
<translation>%1 hat angeklopft.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -277,6 +277,11 @@
|
||||||
<source>removed topic</source>
|
<source>removed topic</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+6"/>
|
||||||
|
<source>%1 created and configured room: %2</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Placeholder</name>
|
<name>Placeholder</name>
|
||||||
|
@ -474,7 +479,7 @@
|
||||||
<context>
|
<context>
|
||||||
<name>TimelineModel</name>
|
<name>TimelineModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/timeline/TimelineModel.cpp" line="+711"/>
|
<location filename="../../src/timeline/TimelineModel.cpp" line="+714"/>
|
||||||
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
||||||
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
|
@ -538,12 +543,57 @@
|
||||||
</translation>
|
</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+96"/>
|
<location line="+68"/>
|
||||||
|
<source>%1 opened the room to the public</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 made this room require and invitation to join</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room open to guests</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 has closed the room to guest access</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room history world readable. Events may be now read by non-joined people</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+4"/>
|
||||||
|
<source>%1 set the room history visible to members from this point on</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they were invited</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they joined the room</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+22"/>
|
||||||
|
<source>%1 has changed the room's permissions.</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+48"/>
|
||||||
<source>%1 was invited.</source>
|
<source>%1 was invited.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+9"/>
|
<location line="+11"/>
|
||||||
<source>%1 changed their display name and avatar.</source>
|
<source>%1 changed their display name and avatar.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -563,7 +613,7 @@
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+7"/>
|
<location line="+9"/>
|
||||||
<source>%1 rejected their invite.</source>
|
<source>%1 rejected their invite.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -600,16 +650,21 @@
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+2"/>
|
||||||
<source>%1 left after having already left!</source>
|
<source>%1 left after having already left!</source>
|
||||||
<comment>This is a leave event after the user already left and shouln't happen apart from state resets</comment>
|
<comment>This is a leave event after the user already left and shouldn't happen apart from state resets</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+6"/>
|
<location line="+7"/>
|
||||||
<source>%1 was banned.</source>
|
<source>%1 was banned</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+8"/>
|
||||||
|
<source> Reason: %1</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="-5"/>
|
||||||
<source>%1 knocked.</source>
|
<source>%1 knocked.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -277,6 +277,11 @@
|
||||||
<source>removed topic</source>
|
<source>removed topic</source>
|
||||||
<translation>removed topic</translation>
|
<translation>removed topic</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+6"/>
|
||||||
|
<source>%1 created and configured room: %2</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Placeholder</name>
|
<name>Placeholder</name>
|
||||||
|
@ -474,7 +479,7 @@
|
||||||
<context>
|
<context>
|
||||||
<name>TimelineModel</name>
|
<name>TimelineModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/timeline/TimelineModel.cpp" line="+711"/>
|
<location filename="../../src/timeline/TimelineModel.cpp" line="+714"/>
|
||||||
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
||||||
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
||||||
<translation>-- Encrypted Event (No keys found for decryption) --</translation>
|
<translation>-- Encrypted Event (No keys found for decryption) --</translation>
|
||||||
|
@ -538,12 +543,57 @@
|
||||||
</translation>
|
</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+96"/>
|
<location line="+68"/>
|
||||||
|
<source>%1 opened the room to the public</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 made this room require and invitation to join</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room open to guests</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 has closed the room to guest access</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room history world readable. Events may be now read by non-joined people</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+4"/>
|
||||||
|
<source>%1 set the room history visible to members from this point on</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they were invited</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they joined the room</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+22"/>
|
||||||
|
<source>%1 has changed the room's permissions.</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+48"/>
|
||||||
<source>%1 was invited.</source>
|
<source>%1 was invited.</source>
|
||||||
<translation>%1 was invited.</translation>
|
<translation>%1 was invited.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+9"/>
|
<location line="+11"/>
|
||||||
<source>%1 changed their display name and avatar.</source>
|
<source>%1 changed their display name and avatar.</source>
|
||||||
<translation>%1 changed their display name and avatar.</translation>
|
<translation>%1 changed their display name and avatar.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -563,7 +613,7 @@
|
||||||
<translation>%1 joined.</translation>
|
<translation>%1 joined.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+7"/>
|
<location line="+9"/>
|
||||||
<source>%1 rejected their invite.</source>
|
<source>%1 rejected their invite.</source>
|
||||||
<translation>%1 rejected their invite.</translation>
|
<translation>%1 rejected their invite.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -600,16 +650,21 @@
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+2"/>
|
||||||
<source>%1 left after having already left!</source>
|
<source>%1 left after having already left!</source>
|
||||||
<comment>This is a leave event after the user already left and shouln't happen apart from state resets</comment>
|
<comment>This is a leave event after the user already left and shouldn't happen apart from state resets</comment>
|
||||||
<translation>%1 left after having already left!</translation>
|
<translation type="unfinished">%1 left after having already left!</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+6"/>
|
<location line="+7"/>
|
||||||
<source>%1 was banned.</source>
|
<source>%1 was banned</source>
|
||||||
<translation>%1 was banned.</translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+8"/>
|
||||||
|
<source> Reason: %1</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="-5"/>
|
||||||
<source>%1 knocked.</source>
|
<source>%1 knocked.</source>
|
||||||
<translation>%1 knocked.</translation>
|
<translation>%1 knocked.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -277,6 +277,11 @@
|
||||||
<source>removed topic</source>
|
<source>removed topic</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+6"/>
|
||||||
|
<source>%1 created and configured room: %2</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Placeholder</name>
|
<name>Placeholder</name>
|
||||||
|
@ -474,7 +479,7 @@
|
||||||
<context>
|
<context>
|
||||||
<name>TimelineModel</name>
|
<name>TimelineModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/timeline/TimelineModel.cpp" line="+711"/>
|
<location filename="../../src/timeline/TimelineModel.cpp" line="+714"/>
|
||||||
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
||||||
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
||||||
<translation type="unfinished">-- Salattu viesti (salauksen purkuavaimia ei löydetty) --</translation>
|
<translation type="unfinished">-- Salattu viesti (salauksen purkuavaimia ei löydetty) --</translation>
|
||||||
|
@ -538,12 +543,57 @@
|
||||||
</translation>
|
</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+96"/>
|
<location line="+68"/>
|
||||||
|
<source>%1 opened the room to the public</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 made this room require and invitation to join</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room open to guests</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 has closed the room to guest access</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room history world readable. Events may be now read by non-joined people</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+4"/>
|
||||||
|
<source>%1 set the room history visible to members from this point on</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they were invited</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they joined the room</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+22"/>
|
||||||
|
<source>%1 has changed the room's permissions.</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+48"/>
|
||||||
<source>%1 was invited.</source>
|
<source>%1 was invited.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+9"/>
|
<location line="+11"/>
|
||||||
<source>%1 changed their display name and avatar.</source>
|
<source>%1 changed their display name and avatar.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -563,7 +613,7 @@
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+7"/>
|
<location line="+9"/>
|
||||||
<source>%1 rejected their invite.</source>
|
<source>%1 rejected their invite.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -600,16 +650,21 @@
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+2"/>
|
||||||
<source>%1 left after having already left!</source>
|
<source>%1 left after having already left!</source>
|
||||||
<comment>This is a leave event after the user already left and shouln't happen apart from state resets</comment>
|
<comment>This is a leave event after the user already left and shouldn't happen apart from state resets</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+6"/>
|
<location line="+7"/>
|
||||||
<source>%1 was banned.</source>
|
<source>%1 was banned</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+8"/>
|
||||||
|
<source> Reason: %1</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="-5"/>
|
||||||
<source>%1 knocked.</source>
|
<source>%1 knocked.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -277,6 +277,11 @@
|
||||||
<source>removed topic</source>
|
<source>removed topic</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+6"/>
|
||||||
|
<source>%1 created and configured room: %2</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Placeholder</name>
|
<name>Placeholder</name>
|
||||||
|
@ -475,7 +480,7 @@
|
||||||
<context>
|
<context>
|
||||||
<name>TimelineModel</name>
|
<name>TimelineModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/timeline/TimelineModel.cpp" line="+711"/>
|
<location filename="../../src/timeline/TimelineModel.cpp" line="+714"/>
|
||||||
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
||||||
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
|
@ -539,12 +544,57 @@
|
||||||
</translation>
|
</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+96"/>
|
<location line="+68"/>
|
||||||
|
<source>%1 opened the room to the public</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 made this room require and invitation to join</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room open to guests</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 has closed the room to guest access</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room history world readable. Events may be now read by non-joined people</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+4"/>
|
||||||
|
<source>%1 set the room history visible to members from this point on</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they were invited</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they joined the room</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+22"/>
|
||||||
|
<source>%1 has changed the room's permissions.</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+48"/>
|
||||||
<source>%1 was invited.</source>
|
<source>%1 was invited.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+9"/>
|
<location line="+11"/>
|
||||||
<source>%1 changed their display name and avatar.</source>
|
<source>%1 changed their display name and avatar.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -564,7 +614,7 @@
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+7"/>
|
<location line="+9"/>
|
||||||
<source>%1 rejected their invite.</source>
|
<source>%1 rejected their invite.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -601,16 +651,21 @@
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+2"/>
|
||||||
<source>%1 left after having already left!</source>
|
<source>%1 left after having already left!</source>
|
||||||
<comment>This is a leave event after the user already left and shouln't happen apart from state resets</comment>
|
<comment>This is a leave event after the user already left and shouldn't happen apart from state resets</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+6"/>
|
<location line="+7"/>
|
||||||
<source>%1 was banned.</source>
|
<source>%1 was banned</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+8"/>
|
||||||
|
<source> Reason: %1</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="-5"/>
|
||||||
<source>%1 knocked.</source>
|
<source>%1 knocked.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -277,6 +277,11 @@
|
||||||
<source>removed topic</source>
|
<source>removed topic</source>
|
||||||
<translation>話題が削除されました</translation>
|
<translation>話題が削除されました</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+6"/>
|
||||||
|
<source>%1 created and configured room: %2</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Placeholder</name>
|
<name>Placeholder</name>
|
||||||
|
@ -474,7 +479,7 @@
|
||||||
<context>
|
<context>
|
||||||
<name>TimelineModel</name>
|
<name>TimelineModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/timeline/TimelineModel.cpp" line="+711"/>
|
<location filename="../../src/timeline/TimelineModel.cpp" line="+714"/>
|
||||||
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
||||||
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
||||||
<translation>-- 暗号化イベント (復号鍵が見つかりません) --</translation>
|
<translation>-- 暗号化イベント (復号鍵が見つかりません) --</translation>
|
||||||
|
@ -537,12 +542,57 @@
|
||||||
</translation>
|
</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+96"/>
|
<location line="+68"/>
|
||||||
|
<source>%1 opened the room to the public</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 made this room require and invitation to join</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room open to guests</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 has closed the room to guest access</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room history world readable. Events may be now read by non-joined people</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+4"/>
|
||||||
|
<source>%1 set the room history visible to members from this point on</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they were invited</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they joined the room</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+22"/>
|
||||||
|
<source>%1 has changed the room's permissions.</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+48"/>
|
||||||
<source>%1 was invited.</source>
|
<source>%1 was invited.</source>
|
||||||
<translation>%1が招待されました。</translation>
|
<translation>%1が招待されました。</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+9"/>
|
<location line="+11"/>
|
||||||
<source>%1 changed their display name and avatar.</source>
|
<source>%1 changed their display name and avatar.</source>
|
||||||
<translation>%1が表示名とアバターを変更しました。</translation>
|
<translation>%1が表示名とアバターを変更しました。</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -562,7 +612,7 @@
|
||||||
<translation>%1が参加しました。</translation>
|
<translation>%1が参加しました。</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+7"/>
|
<location line="+9"/>
|
||||||
<source>%1 rejected their invite.</source>
|
<source>%1 rejected their invite.</source>
|
||||||
<translation>%1が招待を拒否しました。</translation>
|
<translation>%1が招待を拒否しました。</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -599,16 +649,21 @@
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+2"/>
|
||||||
<source>%1 left after having already left!</source>
|
<source>%1 left after having already left!</source>
|
||||||
<comment>This is a leave event after the user already left and shouln't happen apart from state resets</comment>
|
<comment>This is a leave event after the user already left and shouldn't happen apart from state resets</comment>
|
||||||
<translation>退出済みの%1が退出しました!</translation>
|
<translation type="unfinished">退出済みの%1が退出しました!</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+6"/>
|
<location line="+7"/>
|
||||||
<source>%1 was banned.</source>
|
<source>%1 was banned</source>
|
||||||
<translation>%1が永久追放されました。</translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+8"/>
|
||||||
|
<source> Reason: %1</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="-5"/>
|
||||||
<source>%1 knocked.</source>
|
<source>%1 knocked.</source>
|
||||||
<translation>%1がノックしました。</translation>
|
<translation>%1がノックしました。</translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -277,6 +277,11 @@
|
||||||
<source>removed topic</source>
|
<source>removed topic</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+6"/>
|
||||||
|
<source>%1 created and configured room: %2</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Placeholder</name>
|
<name>Placeholder</name>
|
||||||
|
@ -474,7 +479,7 @@
|
||||||
<context>
|
<context>
|
||||||
<name>TimelineModel</name>
|
<name>TimelineModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/timeline/TimelineModel.cpp" line="+711"/>
|
<location filename="../../src/timeline/TimelineModel.cpp" line="+714"/>
|
||||||
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
||||||
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
|
@ -538,12 +543,57 @@
|
||||||
</translation>
|
</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+96"/>
|
<location line="+68"/>
|
||||||
|
<source>%1 opened the room to the public</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 made this room require and invitation to join</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room open to guests</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 has closed the room to guest access</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room history world readable. Events may be now read by non-joined people</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+4"/>
|
||||||
|
<source>%1 set the room history visible to members from this point on</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they were invited</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they joined the room</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+22"/>
|
||||||
|
<source>%1 has changed the room's permissions.</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+48"/>
|
||||||
<source>%1 was invited.</source>
|
<source>%1 was invited.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+9"/>
|
<location line="+11"/>
|
||||||
<source>%1 changed their display name and avatar.</source>
|
<source>%1 changed their display name and avatar.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -563,7 +613,7 @@
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+7"/>
|
<location line="+9"/>
|
||||||
<source>%1 rejected their invite.</source>
|
<source>%1 rejected their invite.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -600,16 +650,21 @@
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+2"/>
|
||||||
<source>%1 left after having already left!</source>
|
<source>%1 left after having already left!</source>
|
||||||
<comment>This is a leave event after the user already left and shouln't happen apart from state resets</comment>
|
<comment>This is a leave event after the user already left and shouldn't happen apart from state resets</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+6"/>
|
<location line="+7"/>
|
||||||
<source>%1 was banned.</source>
|
<source>%1 was banned</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+8"/>
|
||||||
|
<source> Reason: %1</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="-5"/>
|
||||||
<source>%1 knocked.</source>
|
<source>%1 knocked.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -277,6 +277,11 @@
|
||||||
<source>removed topic</source>
|
<source>removed topic</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+6"/>
|
||||||
|
<source>%1 created and configured room: %2</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Placeholder</name>
|
<name>Placeholder</name>
|
||||||
|
@ -474,7 +479,7 @@
|
||||||
<context>
|
<context>
|
||||||
<name>TimelineModel</name>
|
<name>TimelineModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/timeline/TimelineModel.cpp" line="+711"/>
|
<location filename="../../src/timeline/TimelineModel.cpp" line="+714"/>
|
||||||
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
||||||
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
|
@ -539,12 +544,57 @@
|
||||||
</translation>
|
</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+96"/>
|
<location line="+68"/>
|
||||||
|
<source>%1 opened the room to the public</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 made this room require and invitation to join</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room open to guests</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 has closed the room to guest access</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room history world readable. Events may be now read by non-joined people</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+4"/>
|
||||||
|
<source>%1 set the room history visible to members from this point on</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they were invited</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they joined the room</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+22"/>
|
||||||
|
<source>%1 has changed the room's permissions.</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+48"/>
|
||||||
<source>%1 was invited.</source>
|
<source>%1 was invited.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+9"/>
|
<location line="+11"/>
|
||||||
<source>%1 changed their display name and avatar.</source>
|
<source>%1 changed their display name and avatar.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -564,7 +614,7 @@
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+7"/>
|
<location line="+9"/>
|
||||||
<source>%1 rejected their invite.</source>
|
<source>%1 rejected their invite.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -601,16 +651,21 @@
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+2"/>
|
||||||
<source>%1 left after having already left!</source>
|
<source>%1 left after having already left!</source>
|
||||||
<comment>This is a leave event after the user already left and shouln't happen apart from state resets</comment>
|
<comment>This is a leave event after the user already left and shouldn't happen apart from state resets</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+6"/>
|
<location line="+7"/>
|
||||||
<source>%1 was banned.</source>
|
<source>%1 was banned</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+8"/>
|
||||||
|
<source> Reason: %1</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="-5"/>
|
||||||
<source>%1 knocked.</source>
|
<source>%1 knocked.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -277,6 +277,11 @@
|
||||||
<source>removed topic</source>
|
<source>removed topic</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+6"/>
|
||||||
|
<source>%1 created and configured room: %2</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Placeholder</name>
|
<name>Placeholder</name>
|
||||||
|
@ -474,7 +479,7 @@
|
||||||
<context>
|
<context>
|
||||||
<name>TimelineModel</name>
|
<name>TimelineModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/timeline/TimelineModel.cpp" line="+711"/>
|
<location filename="../../src/timeline/TimelineModel.cpp" line="+714"/>
|
||||||
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
||||||
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
|
@ -539,12 +544,57 @@
|
||||||
</translation>
|
</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+96"/>
|
<location line="+68"/>
|
||||||
|
<source>%1 opened the room to the public</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 made this room require and invitation to join</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room open to guests</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 has closed the room to guest access</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room history world readable. Events may be now read by non-joined people</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+4"/>
|
||||||
|
<source>%1 set the room history visible to members from this point on</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they were invited</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they joined the room</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+22"/>
|
||||||
|
<source>%1 has changed the room's permissions.</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+48"/>
|
||||||
<source>%1 was invited.</source>
|
<source>%1 was invited.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+9"/>
|
<location line="+11"/>
|
||||||
<source>%1 changed their display name and avatar.</source>
|
<source>%1 changed their display name and avatar.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -564,7 +614,7 @@
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+7"/>
|
<location line="+9"/>
|
||||||
<source>%1 rejected their invite.</source>
|
<source>%1 rejected their invite.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -601,16 +651,21 @@
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+2"/>
|
||||||
<source>%1 left after having already left!</source>
|
<source>%1 left after having already left!</source>
|
||||||
<comment>This is a leave event after the user already left and shouln't happen apart from state resets</comment>
|
<comment>This is a leave event after the user already left and shouldn't happen apart from state resets</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+6"/>
|
<location line="+7"/>
|
||||||
<source>%1 was banned.</source>
|
<source>%1 was banned</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+8"/>
|
||||||
|
<source> Reason: %1</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="-5"/>
|
||||||
<source>%1 knocked.</source>
|
<source>%1 knocked.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -277,6 +277,11 @@
|
||||||
<source>removed topic</source>
|
<source>removed topic</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+6"/>
|
||||||
|
<source>%1 created and configured room: %2</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Placeholder</name>
|
<name>Placeholder</name>
|
||||||
|
@ -474,7 +479,7 @@
|
||||||
<context>
|
<context>
|
||||||
<name>TimelineModel</name>
|
<name>TimelineModel</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/timeline/TimelineModel.cpp" line="+711"/>
|
<location filename="../../src/timeline/TimelineModel.cpp" line="+714"/>
|
||||||
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
||||||
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
|
@ -537,12 +542,57 @@
|
||||||
</translation>
|
</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+96"/>
|
<location line="+68"/>
|
||||||
|
<source>%1 opened the room to the public</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 made this room require and invitation to join</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room open to guests</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+2"/>
|
||||||
|
<source>%1 has closed the room to guest access</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+23"/>
|
||||||
|
<source>%1 made the room history world readable. Events may be now read by non-joined people</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+4"/>
|
||||||
|
<source>%1 set the room history visible to members from this point on</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they were invited</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+3"/>
|
||||||
|
<source>%1 set the room history visible to members since they joined the room</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+22"/>
|
||||||
|
<source>%1 has changed the room's permissions.</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="+48"/>
|
||||||
<source>%1 was invited.</source>
|
<source>%1 was invited.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+9"/>
|
<location line="+11"/>
|
||||||
<source>%1 changed their display name and avatar.</source>
|
<source>%1 changed their display name and avatar.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -562,7 +612,7 @@
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+7"/>
|
<location line="+9"/>
|
||||||
<source>%1 rejected their invite.</source>
|
<source>%1 rejected their invite.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -599,16 +649,21 @@
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+2"/>
|
||||||
<source>%1 left after having already left!</source>
|
<source>%1 left after having already left!</source>
|
||||||
<comment>This is a leave event after the user already left and shouln't happen apart from state resets</comment>
|
<comment>This is a leave event after the user already left and shouldn't happen apart from state resets</comment>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+6"/>
|
<location line="+7"/>
|
||||||
<source>%1 was banned.</source>
|
<source>%1 was banned</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location line="+2"/>
|
<location line="+8"/>
|
||||||
|
<source> Reason: %1</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location line="-5"/>
|
||||||
<source>%1 knocked.</source>
|
<source>%1 knocked.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -81,6 +81,37 @@ Item {
|
||||||
text: model.data.roomTopic ? qsTr("topic changed to: %1").arg(model.data.roomTopic) : qsTr("removed topic")
|
text: model.data.roomTopic ? qsTr("topic changed to: %1").arg(model.data.roomTopic) : qsTr("removed topic")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
DelegateChoice {
|
||||||
|
roleValue: MtxEvent.RoomCreate
|
||||||
|
NoticeMessage {
|
||||||
|
text: qsTr("%1 created and configured room: %2").arg(model.data.userName).arg(model.data.roomId)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
DelegateChoice {
|
||||||
|
// TODO: make a more complex formatter for the power levels.
|
||||||
|
roleValue: MtxEvent.PowerLevels
|
||||||
|
NoticeMessage {
|
||||||
|
text: timelineManager.timeline.formatPowerLevelEvent(model.data.id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
DelegateChoice {
|
||||||
|
roleValue: MtxEvent.RoomJoinRules
|
||||||
|
NoticeMessage {
|
||||||
|
text: timelineManager.timeline.formatJoinRuleEvent(model.data.id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
DelegateChoice {
|
||||||
|
roleValue: MtxEvent.RoomHistoryVisibility
|
||||||
|
NoticeMessage {
|
||||||
|
text: timelineManager.timeline.formatHistoryVisibilityEvent(model.data.id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
DelegateChoice {
|
||||||
|
roleValue: MtxEvent.RoomGuestAccess
|
||||||
|
NoticeMessage {
|
||||||
|
text: timelineManager.timeline.formatGuestAccessEvent(model.data.id)
|
||||||
|
}
|
||||||
|
}
|
||||||
DelegateChoice {
|
DelegateChoice {
|
||||||
roleValue: MtxEvent.Member
|
roleValue: MtxEvent.Member
|
||||||
NoticeMessage {
|
NoticeMessage {
|
||||||
|
|
|
@ -39,17 +39,17 @@ struct RoomEventType
|
||||||
case EventType::RoomCanonicalAlias:
|
case EventType::RoomCanonicalAlias:
|
||||||
return qml_mtx_events::EventType::CanonicalAlias;
|
return qml_mtx_events::EventType::CanonicalAlias;
|
||||||
case EventType::RoomCreate:
|
case EventType::RoomCreate:
|
||||||
return qml_mtx_events::EventType::Create;
|
return qml_mtx_events::EventType::RoomCreate;
|
||||||
case EventType::RoomEncrypted:
|
case EventType::RoomEncrypted:
|
||||||
return qml_mtx_events::EventType::Encrypted;
|
return qml_mtx_events::EventType::Encrypted;
|
||||||
case EventType::RoomEncryption:
|
case EventType::RoomEncryption:
|
||||||
return qml_mtx_events::EventType::Encryption;
|
return qml_mtx_events::EventType::Encryption;
|
||||||
case EventType::RoomGuestAccess:
|
case EventType::RoomGuestAccess:
|
||||||
return qml_mtx_events::EventType::GuestAccess;
|
return qml_mtx_events::EventType::RoomGuestAccess;
|
||||||
case EventType::RoomHistoryVisibility:
|
case EventType::RoomHistoryVisibility:
|
||||||
return qml_mtx_events::EventType::HistoryVisibility;
|
return qml_mtx_events::EventType::RoomHistoryVisibility;
|
||||||
case EventType::RoomJoinRules:
|
case EventType::RoomJoinRules:
|
||||||
return qml_mtx_events::EventType::JoinRules;
|
return qml_mtx_events::EventType::RoomJoinRules;
|
||||||
case EventType::RoomMember:
|
case EventType::RoomMember:
|
||||||
return qml_mtx_events::EventType::Member;
|
return qml_mtx_events::EventType::Member;
|
||||||
case EventType::RoomMessage:
|
case EventType::RoomMessage:
|
||||||
|
@ -222,6 +222,7 @@ TimelineModel::roleNames() const
|
||||||
{State, "state"},
|
{State, "state"},
|
||||||
{IsEncrypted, "isEncrypted"},
|
{IsEncrypted, "isEncrypted"},
|
||||||
{ReplyTo, "replyTo"},
|
{ReplyTo, "replyTo"},
|
||||||
|
{RoomId, "roomId"},
|
||||||
{RoomName, "roomName"},
|
{RoomName, "roomName"},
|
||||||
{RoomTopic, "roomTopic"},
|
{RoomTopic, "roomTopic"},
|
||||||
{Dump, "dump"},
|
{Dump, "dump"},
|
||||||
|
@ -335,6 +336,8 @@ TimelineModel::data(const QString &id, int role) const
|
||||||
}
|
}
|
||||||
case ReplyTo:
|
case ReplyTo:
|
||||||
return QVariant(QString::fromStdString(in_reply_to_event(event)));
|
return QVariant(QString::fromStdString(in_reply_to_event(event)));
|
||||||
|
case RoomId:
|
||||||
|
return QVariant(QString::fromStdString(room_id(event)));
|
||||||
case RoomName:
|
case RoomName:
|
||||||
return QVariant(QString::fromStdString(room_name(event)));
|
return QVariant(QString::fromStdString(room_name(event)));
|
||||||
case RoomTopic:
|
case RoomTopic:
|
||||||
|
@ -1471,6 +1474,107 @@ TimelineModel::formatTypingUsers(const std::vector<QString> &users, QColor bg)
|
||||||
return temp.arg(uidWithoutLast.join(", ")).arg(formatUser(users.back()));
|
return temp.arg(uidWithoutLast.join(", ")).arg(formatUser(users.back()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QString
|
||||||
|
TimelineModel::formatJoinRuleEvent(QString id)
|
||||||
|
{
|
||||||
|
if (!events.contains(id))
|
||||||
|
return "";
|
||||||
|
|
||||||
|
auto event =
|
||||||
|
std::get_if<mtx::events::StateEvent<mtx::events::state::JoinRules>>(&events[id]);
|
||||||
|
if (!event)
|
||||||
|
return "";
|
||||||
|
|
||||||
|
QString user = QString::fromStdString(event->sender);
|
||||||
|
QString name = escapeEmoji(displayName(user));
|
||||||
|
|
||||||
|
switch (event->content.join_rule) {
|
||||||
|
case mtx::events::state::JoinRule::Public:
|
||||||
|
return tr("%1 opened the room to the public").arg(name);
|
||||||
|
case mtx::events::state::JoinRule::Invite:
|
||||||
|
return tr("%1 made this room require and invitation to join").arg(name);
|
||||||
|
default:
|
||||||
|
// Currently, knock and private are reserved keywords and not implemented in Matrix.
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
QString
|
||||||
|
TimelineModel::formatGuestAccessEvent(QString id)
|
||||||
|
{
|
||||||
|
if (!events.contains(id))
|
||||||
|
return "";
|
||||||
|
|
||||||
|
auto event =
|
||||||
|
std::get_if<mtx::events::StateEvent<mtx::events::state::GuestAccess>>(&events[id]);
|
||||||
|
if (!event)
|
||||||
|
return "";
|
||||||
|
|
||||||
|
QString user = QString::fromStdString(event->sender);
|
||||||
|
QString name = escapeEmoji(displayName(user));
|
||||||
|
|
||||||
|
switch (event->content.guest_access) {
|
||||||
|
case mtx::events::state::AccessState::CanJoin:
|
||||||
|
return tr("%1 made the room open to guests").arg(name);
|
||||||
|
case mtx::events::state::AccessState::Forbidden:
|
||||||
|
return tr("%1 has closed the room to guest access").arg(name);
|
||||||
|
default:
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
QString
|
||||||
|
TimelineModel::formatHistoryVisibilityEvent(QString id)
|
||||||
|
{
|
||||||
|
if (!events.contains(id))
|
||||||
|
return "";
|
||||||
|
|
||||||
|
auto event =
|
||||||
|
std::get_if<mtx::events::StateEvent<mtx::events::state::HistoryVisibility>>(&events[id]);
|
||||||
|
|
||||||
|
if (!event)
|
||||||
|
return "";
|
||||||
|
|
||||||
|
QString user = QString::fromStdString(event->sender);
|
||||||
|
QString name = escapeEmoji(displayName(user));
|
||||||
|
|
||||||
|
switch (event->content.history_visibility) {
|
||||||
|
case mtx::events::state::Visibility::WorldReadable:
|
||||||
|
return tr("%1 made the room history world readable. Events may be now read by "
|
||||||
|
"non-joined people")
|
||||||
|
.arg(name);
|
||||||
|
case mtx::events::state::Visibility::Shared:
|
||||||
|
return tr("%1 set the room history visible to members from this point on")
|
||||||
|
.arg(name);
|
||||||
|
case mtx::events::state::Visibility::Invited:
|
||||||
|
return tr("%1 set the room history visible to members since they were invited")
|
||||||
|
.arg(name);
|
||||||
|
case mtx::events::state::Visibility::Joined:
|
||||||
|
return tr("%1 set the room history visible to members since they joined the room")
|
||||||
|
.arg(name);
|
||||||
|
default:
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
QString
|
||||||
|
TimelineModel::formatPowerLevelEvent(QString id)
|
||||||
|
{
|
||||||
|
if (!events.contains(id))
|
||||||
|
return "";
|
||||||
|
|
||||||
|
auto event =
|
||||||
|
std::get_if<mtx::events::StateEvent<mtx::events::state::PowerLevels>>(&events[id]);
|
||||||
|
if (!event)
|
||||||
|
return "";
|
||||||
|
|
||||||
|
QString user = QString::fromStdString(event->sender);
|
||||||
|
QString name = escapeEmoji(displayName(user));
|
||||||
|
|
||||||
|
// TODO: power levels rendering is actually a bit complex. work on this later.
|
||||||
|
return tr("%1 has changed the room's permissions.").arg(name);
|
||||||
|
}
|
||||||
|
|
||||||
QString
|
QString
|
||||||
TimelineModel::formatMemberEvent(QString id)
|
TimelineModel::formatMemberEvent(QString id)
|
||||||
{
|
{
|
||||||
|
@ -1510,12 +1614,14 @@ TimelineModel::formatMemberEvent(QString id)
|
||||||
|
|
||||||
QString user = QString::fromStdString(event->state_key);
|
QString user = QString::fromStdString(event->state_key);
|
||||||
QString name = escapeEmoji(displayName(user));
|
QString name = escapeEmoji(displayName(user));
|
||||||
|
QString rendered;
|
||||||
|
|
||||||
// see table https://matrix.org/docs/spec/client_server/latest#m-room-member
|
// see table https://matrix.org/docs/spec/client_server/latest#m-room-member
|
||||||
using namespace mtx::events::state;
|
using namespace mtx::events::state;
|
||||||
switch (event->content.membership) {
|
switch (event->content.membership) {
|
||||||
case Membership::Invite:
|
case Membership::Invite:
|
||||||
return tr("%1 was invited.").arg(name);
|
rendered = tr("%1 was invited.").arg(name);
|
||||||
|
break;
|
||||||
case Membership::Join:
|
case Membership::Join:
|
||||||
if (prevEvent && prevEvent->content.membership == Membership::Join) {
|
if (prevEvent && prevEvent->content.membership == Membership::Join) {
|
||||||
bool displayNameChanged =
|
bool displayNameChanged =
|
||||||
|
@ -1524,47 +1630,57 @@ TimelineModel::formatMemberEvent(QString id)
|
||||||
prevEvent->content.avatar_url != event->content.avatar_url;
|
prevEvent->content.avatar_url != event->content.avatar_url;
|
||||||
|
|
||||||
if (displayNameChanged && avatarChanged)
|
if (displayNameChanged && avatarChanged)
|
||||||
return tr("%1 changed their display name and avatar.").arg(name);
|
rendered =
|
||||||
|
tr("%1 changed their display name and avatar.").arg(name);
|
||||||
else if (displayNameChanged)
|
else if (displayNameChanged)
|
||||||
return tr("%1 changed their display name.").arg(name);
|
rendered = tr("%1 changed their display name.").arg(name);
|
||||||
else if (avatarChanged)
|
else if (avatarChanged)
|
||||||
return tr("%1 changed their avatar.").arg(name);
|
rendered = tr("%1 changed their avatar.").arg(name);
|
||||||
// the case of nothing changed but join follows join shouldn't happen, so
|
// the case of nothing changed but join follows join shouldn't happen, so
|
||||||
// just show it as join
|
// just show it as join
|
||||||
|
} else {
|
||||||
|
rendered = tr("%1 joined.").arg(name);
|
||||||
}
|
}
|
||||||
return tr("%1 joined.").arg(name);
|
break;
|
||||||
case Membership::Leave:
|
case Membership::Leave:
|
||||||
if (!prevEvent) // Should only ever happen temporarily
|
if (!prevEvent) // Should only ever happen temporarily
|
||||||
return "";
|
return "";
|
||||||
|
|
||||||
if (prevEvent->content.membership == Membership::Invite) {
|
if (prevEvent->content.membership == Membership::Invite) {
|
||||||
if (event->state_key == event->sender)
|
if (event->state_key == event->sender)
|
||||||
return tr("%1 rejected their invite.").arg(name);
|
rendered = tr("%1 rejected their invite.").arg(name);
|
||||||
else
|
else
|
||||||
return tr("Revoked the invite to %1.").arg(name);
|
rendered = tr("Revoked the invite to %1.").arg(name);
|
||||||
} else if (prevEvent->content.membership == Membership::Join) {
|
} else if (prevEvent->content.membership == Membership::Join) {
|
||||||
if (event->state_key == event->sender)
|
if (event->state_key == event->sender)
|
||||||
return tr("%1 left the room.").arg(name);
|
rendered = tr("%1 left the room.").arg(name);
|
||||||
else
|
else
|
||||||
return tr("Kicked %1.").arg(name);
|
rendered = tr("Kicked %1.").arg(name);
|
||||||
} else if (prevEvent->content.membership == Membership::Ban) {
|
} else if (prevEvent->content.membership == Membership::Ban) {
|
||||||
return tr("Unbanned %1").arg(name);
|
rendered = tr("Unbanned %1").arg(name);
|
||||||
} else if (prevEvent->content.membership == Membership::Knock) {
|
} else if (prevEvent->content.membership == Membership::Knock) {
|
||||||
if (event->state_key == event->sender)
|
if (event->state_key == event->sender)
|
||||||
return tr("%1 redacted their knock.").arg(name);
|
rendered = tr("%1 redacted their knock.").arg(name);
|
||||||
else
|
else
|
||||||
return tr("Rejected the knock from %1.").arg(name);
|
rendered = tr("Rejected the knock from %1.").arg(name);
|
||||||
} else
|
} else
|
||||||
return tr("%1 left after having already left!",
|
return tr("%1 left after having already left!",
|
||||||
"This is a leave event after the user already left and shouln't "
|
"This is a leave event after the user already left and shouldn't "
|
||||||
"happen apart from state resets")
|
"happen apart from state resets")
|
||||||
.arg(name);
|
.arg(name);
|
||||||
|
break;
|
||||||
|
|
||||||
case Membership::Ban:
|
case Membership::Ban:
|
||||||
return tr("%1 was banned.").arg(name);
|
rendered = tr("%1 was banned").arg(name);
|
||||||
|
break;
|
||||||
case Membership::Knock:
|
case Membership::Knock:
|
||||||
return tr("%1 knocked.").arg(name);
|
rendered = tr("%1 knocked.").arg(name);
|
||||||
default:
|
break;
|
||||||
return "";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (event->content.reason != "") {
|
||||||
|
rendered += tr(" Reason: %1").arg(QString::fromStdString(event->content.reason));
|
||||||
|
}
|
||||||
|
|
||||||
|
return rendered;
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,17 +35,17 @@ enum EventType
|
||||||
/// m.room.canonical_alias
|
/// m.room.canonical_alias
|
||||||
CanonicalAlias,
|
CanonicalAlias,
|
||||||
/// m.room.create
|
/// m.room.create
|
||||||
Create,
|
RoomCreate,
|
||||||
/// m.room.encrypted.
|
/// m.room.encrypted.
|
||||||
Encrypted,
|
Encrypted,
|
||||||
/// m.room.encryption.
|
/// m.room.encryption.
|
||||||
Encryption,
|
Encryption,
|
||||||
/// m.room.guest_access
|
/// m.room.guest_access
|
||||||
GuestAccess,
|
RoomGuestAccess,
|
||||||
/// m.room.history_visibility
|
/// m.room.history_visibility
|
||||||
HistoryVisibility,
|
RoomHistoryVisibility,
|
||||||
/// m.room.join_rules
|
/// m.room.join_rules
|
||||||
JoinRules,
|
RoomJoinRules,
|
||||||
/// m.room.member
|
/// m.room.member
|
||||||
Member,
|
Member,
|
||||||
/// m.room.name
|
/// m.room.name
|
||||||
|
@ -152,6 +152,7 @@ public:
|
||||||
State,
|
State,
|
||||||
IsEncrypted,
|
IsEncrypted,
|
||||||
ReplyTo,
|
ReplyTo,
|
||||||
|
RoomId,
|
||||||
RoomName,
|
RoomName,
|
||||||
RoomTopic,
|
RoomTopic,
|
||||||
Dump,
|
Dump,
|
||||||
|
@ -170,6 +171,10 @@ public:
|
||||||
Q_INVOKABLE QString formatDateSeparator(QDate date) const;
|
Q_INVOKABLE QString formatDateSeparator(QDate date) const;
|
||||||
Q_INVOKABLE QString formatTypingUsers(const std::vector<QString> &users, QColor bg);
|
Q_INVOKABLE QString formatTypingUsers(const std::vector<QString> &users, QColor bg);
|
||||||
Q_INVOKABLE QString formatMemberEvent(QString id);
|
Q_INVOKABLE QString formatMemberEvent(QString id);
|
||||||
|
Q_INVOKABLE QString formatJoinRuleEvent(QString id);
|
||||||
|
Q_INVOKABLE QString formatHistoryVisibilityEvent(QString id);
|
||||||
|
Q_INVOKABLE QString formatGuestAccessEvent(QString id);
|
||||||
|
Q_INVOKABLE QString formatPowerLevelEvent(QString id);
|
||||||
|
|
||||||
Q_INVOKABLE QString escapeEmoji(QString str) const;
|
Q_INVOKABLE QString escapeEmoji(QString str) const;
|
||||||
Q_INVOKABLE void viewRawMessage(QString id) const;
|
Q_INVOKABLE void viewRawMessage(QString id) const;
|
||||||
|
|
Loading…
Reference in a new issue