From a899b08939d267c824b0f0e9a8938b3ca8edf2e9 Mon Sep 17 00:00:00 2001
From: Nicolas Werner <nicolas.werner@hotmail.de>
Date: Sat, 26 Feb 2022 02:38:04 +0100
Subject: [PATCH] Update translations

---
 resources/langs/nheko_ca.ts    |  887 +++++++++++++----------
 resources/langs/nheko_cs.ts    |  887 +++++++++++++----------
 resources/langs/nheko_de.ts    | 1093 +++++++++++++++++------------
 resources/langs/nheko_el.ts    |  895 ++++++++++++++----------
 resources/langs/nheko_en.ts    | 1089 +++++++++++++++++------------
 resources/langs/nheko_eo.ts    | 1134 +++++++++++++++++-------------
 resources/langs/nheko_es.ts    | 1205 ++++++++++++++++++--------------
 resources/langs/nheko_et.ts    | 1123 ++++++++++++++++-------------
 resources/langs/nheko_fi.ts    | 1117 ++++++++++++++++-------------
 resources/langs/nheko_fr.ts    | 1127 ++++++++++++++++-------------
 resources/langs/nheko_hu.ts    | 1113 ++++++++++++++++-------------
 resources/langs/nheko_id.ts    | 1123 ++++++++++++++++-------------
 resources/langs/nheko_it.ts    |  993 +++++++++++++++-----------
 resources/langs/nheko_ja.ts    |  975 +++++++++++++++-----------
 resources/langs/nheko_ml.ts    |  891 +++++++++++++----------
 resources/langs/nheko_nl.ts    | 1123 ++++++++++++++++-------------
 resources/langs/nheko_pl.ts    | 1113 ++++++++++++++++-------------
 resources/langs/nheko_pt_BR.ts |  887 +++++++++++++----------
 resources/langs/nheko_pt_PT.ts | 1111 ++++++++++++++++-------------
 resources/langs/nheko_ro.ts    | 1011 ++++++++++++++++-----------
 resources/langs/nheko_ru.ts    | 1082 ++++++++++++++++------------
 resources/langs/nheko_si.ts    |  881 +++++++++++++----------
 resources/langs/nheko_sv.ts    | 1099 +++++++++++++++++------------
 resources/langs/nheko_zh_CN.ts |  941 +++++++++++++++----------
 24 files changed, 14453 insertions(+), 10447 deletions(-)

diff --git a/resources/langs/nheko_ca.ts b/resources/langs/nheko_ca.ts
index e8c102a81..f80cb03ec 100644
--- a/resources/langs/nheko_ca.ts
+++ b/resources/langs/nheko_ca.ts
@@ -35,28 +35,10 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation type="unfinished"></translation>
     </message>
@@ -106,27 +88,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -194,7 +176,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
@@ -254,7 +236,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -317,10 +299,15 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation type="unfinished"></translation>
     </message>
@@ -429,12 +416,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation type="unfinished"></translation>
     </message>
@@ -475,7 +462,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation type="unfinished"></translation>
     </message>
@@ -523,12 +510,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -612,7 +599,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -642,7 +629,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -698,34 +742,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -735,7 +779,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -768,7 +812,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -803,7 +847,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -821,7 +865,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -834,7 +878,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished"></translation>
     </message>
@@ -868,7 +912,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished"></translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -917,7 +961,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation type="unfinished"></translation>
     </message>
@@ -927,7 +971,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation type="unfinished"></translation>
     </message>
@@ -937,26 +981,31 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -966,7 +1015,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -981,17 +1030,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1017,62 +1066,67 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+192"/>
-        <source>Encryption enabled</source>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
+        <source>%1 removed the room name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
+        <source>%1 removed the topic</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1087,27 +1141,22 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+38"/>
-        <source>Negotiating call...</source>
+        <location line="+41"/>
+        <source>%1 is negotiating the call...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-95"/>
+        <location line="-102"/>
         <source>%1 answered the call.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-148"/>
-        <source>removed</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+160"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1115,7 +1164,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1125,17 +1174,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1158,7 +1207,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1178,19 +1227,19 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1225,7 +1274,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1278,7 +1327,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1308,7 +1357,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1381,7 +1430,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1396,7 +1445,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1412,7 +1461,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1430,7 +1479,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1446,63 +1495,88 @@ Example: https://server.my:8787</source>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1512,25 +1586,35 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1543,17 +1627,17 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1561,7 +1645,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1609,7 +1693,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1629,7 +1713,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1657,7 +1741,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1677,7 +1761,12 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1690,7 +1779,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1727,12 +1816,12 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1825,6 +1914,21 @@ Example: https://server.my:8787</source>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1875,7 +1979,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1885,7 +1989,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1893,7 +1997,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1975,7 +2079,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2133,12 +2237,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2146,7 +2250,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished"></translation>
@@ -2263,62 +2367,57 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
-        <source>%1 changed their avatar.</source>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>%1 changed some profile info.</source>
+        <source>%2 unbanned %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+5"/>
-        <source>%1 joined.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+3"/>
-        <source>%1 joined via authorisation from %2&apos;s server.</source>
+        <source>%2 rejected the knock from %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>%1 rejected their invite.</source>
+        <location line="-35"/>
+        <source>%1 changed their avatar.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
+        <source>%1 changed some profile info.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>%1 left the room.</source>
+        <location line="+5"/>
+        <source>%1 joined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
+        <location line="+3"/>
+        <source>%1 joined via authorisation from %2&apos;s server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
+        <location line="+11"/>
+        <source>%1 rejected their invite.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
+        <location line="+5"/>
+        <source>%1 left the room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2328,12 +2427,17 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2343,18 +2447,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
+        <location line="+39"/>
+        <source>%1 left after having already left!</source>
+        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>%1 left after having already left!</source>
-        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2362,7 +2466,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2408,17 +2512,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2476,7 +2580,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2489,7 +2593,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2514,7 +2618,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2524,7 +2628,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2534,7 +2638,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2554,7 +2658,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2638,99 +2742,117 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
         <source>Minimize to tray</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
+        <location line="+2"/>
+        <source>Typing notifications</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
+        <location line="+2"/>
+        <source>Read receipts</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
+        <location line="+2"/>
+        <source>Alert on notification</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
+        <location line="+2"/>
+        <source>Use identicons</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
+        <source>Decrypt messages in sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -2740,301 +2862,308 @@ Only affects messages in encrypted chats.</source>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <source>Touchscreen mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
+        <location line="+2"/>
+        <source>Font size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <source>Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
+        <source>Emoji Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <source>Ringtone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
+        <source>Microphone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
+        <source>Camera</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
+        <location line="+2"/>
+        <source>Camera resolution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <source>Camera frame rate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
+        <source>Send encrypted messages to verified users only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
+        <source>Online Key Backup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Profile</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
+        <location line="+2"/>
+        <source>User ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
+        <source>Accesstoken</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
+        <location line="+2"/>
+        <source>Device ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <source>Device Fingerprint</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
+        <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
+        <source>Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
+        <location line="+2"/>
+        <source>Platform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <source>GENERAL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>TIMELINE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>SIDEBAR</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
+        <source>TRAY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
+        <source>CALLS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>ENCRYPTION</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>INFO</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
+        <location line="+2"/>
+        <source>Session Keys</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
+        <location line="+2"/>
+        <source>Online backup key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
+        <location line="+2"/>
+        <source>Self signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
+        <source>User signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
+        <location line="+2"/>
+        <source>Master signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
+        <location line="+91"/>
+        <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -3043,52 +3172,52 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3098,7 +3227,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3106,26 +3235,26 @@ This usually causes the application icon in the task bar to animate in some fash
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3140,10 +3269,48 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3156,7 +3323,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3171,7 +3338,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3179,22 +3346,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3202,7 +3369,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation type="unfinished"></translation>
     </message>
diff --git a/resources/langs/nheko_cs.ts b/resources/langs/nheko_cs.ts
index 829b90ffa..ddc6eb637 100644
--- a/resources/langs/nheko_cs.ts
+++ b/resources/langs/nheko_cs.ts
@@ -35,28 +35,10 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -74,7 +56,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation type="unfinished"></translation>
     </message>
@@ -107,27 +89,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -143,18 +125,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -195,7 +177,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
@@ -255,7 +237,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -318,10 +300,15 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -397,7 +384,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation type="unfinished"></translation>
     </message>
@@ -430,12 +417,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -448,7 +435,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation type="unfinished"></translation>
     </message>
@@ -476,7 +463,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation type="unfinished"></translation>
     </message>
@@ -524,12 +511,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -542,7 +529,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -613,7 +600,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -643,7 +630,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -651,15 +638,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -699,34 +743,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -736,7 +780,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -769,7 +813,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -804,7 +848,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -822,7 +866,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -835,7 +879,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished"></translation>
     </message>
@@ -869,7 +913,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished"></translation>
     </message>
@@ -890,17 +934,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -918,7 +962,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation type="unfinished"></translation>
     </message>
@@ -928,7 +972,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation type="unfinished"></translation>
     </message>
@@ -938,26 +982,31 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -967,7 +1016,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -982,17 +1031,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1018,62 +1067,67 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+192"/>
-        <source>Encryption enabled</source>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
+        <source>%1 removed the room name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
+        <source>%1 removed the topic</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1088,27 +1142,22 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+38"/>
-        <source>Negotiating call...</source>
+        <location line="+41"/>
+        <source>%1 is negotiating the call...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-95"/>
+        <location line="-102"/>
         <source>%1 answered the call.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-148"/>
-        <source>removed</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+160"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1116,7 +1165,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1126,17 +1175,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1159,7 +1208,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1179,19 +1228,19 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1226,7 +1275,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1279,7 +1328,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1309,7 +1358,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1382,7 +1431,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1397,7 +1446,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1413,7 +1462,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1431,7 +1480,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1447,63 +1496,88 @@ Example: https://server.my:8787</source>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1513,25 +1587,35 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1544,17 +1628,17 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1562,7 +1646,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1610,7 +1694,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1630,7 +1714,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1658,7 +1742,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1678,7 +1762,12 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1691,7 +1780,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1729,12 +1818,12 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1828,6 +1917,21 @@ Example: https://server.my:8787</source>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1878,7 +1982,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1888,7 +1992,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1896,7 +2000,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1978,7 +2082,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2136,12 +2240,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2149,7 +2253,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished"></translation>
@@ -2267,62 +2371,57 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
-        <source>%1 changed their avatar.</source>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>%1 changed some profile info.</source>
+        <source>%2 unbanned %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+5"/>
-        <source>%1 joined.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+3"/>
-        <source>%1 joined via authorisation from %2&apos;s server.</source>
+        <source>%2 rejected the knock from %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>%1 rejected their invite.</source>
+        <location line="-35"/>
+        <source>%1 changed their avatar.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
+        <source>%1 changed some profile info.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>%1 left the room.</source>
+        <location line="+5"/>
+        <source>%1 joined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
+        <location line="+3"/>
+        <source>%1 joined via authorisation from %2&apos;s server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
+        <location line="+11"/>
+        <source>%1 rejected their invite.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
+        <location line="+5"/>
+        <source>%1 left the room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2332,12 +2431,17 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2347,18 +2451,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
+        <location line="+39"/>
+        <source>%1 left after having already left!</source>
+        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>%1 left after having already left!</source>
-        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2366,7 +2470,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2412,17 +2516,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2480,7 +2584,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2493,7 +2597,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2518,7 +2622,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2528,7 +2632,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2538,7 +2642,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2558,7 +2662,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2642,99 +2746,117 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
         <source>Minimize to tray</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
+        <location line="+2"/>
+        <source>Typing notifications</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
+        <location line="+2"/>
+        <source>Read receipts</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
+        <location line="+2"/>
+        <source>Alert on notification</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
+        <location line="+2"/>
+        <source>Use identicons</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
+        <source>Decrypt messages in sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -2744,301 +2866,308 @@ Only affects messages in encrypted chats.</source>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <source>Touchscreen mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
+        <location line="+2"/>
+        <source>Font size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <source>Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
+        <source>Emoji Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <source>Ringtone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
+        <source>Microphone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
+        <source>Camera</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
+        <location line="+2"/>
+        <source>Camera resolution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <source>Camera frame rate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
+        <source>Send encrypted messages to verified users only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
+        <source>Online Key Backup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Profile</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
+        <location line="+2"/>
+        <source>User ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
+        <source>Accesstoken</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
+        <location line="+2"/>
+        <source>Device ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <source>Device Fingerprint</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
+        <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
+        <source>Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
+        <location line="+2"/>
+        <source>Platform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <source>GENERAL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>TIMELINE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>SIDEBAR</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
+        <source>TRAY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
+        <source>CALLS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>ENCRYPTION</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>INFO</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
+        <location line="+2"/>
+        <source>Session Keys</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
+        <location line="+2"/>
+        <source>Online backup key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
+        <location line="+2"/>
+        <source>Self signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
+        <source>User signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
+        <location line="+2"/>
+        <source>Master signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
+        <location line="+91"/>
+        <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -3047,52 +3176,52 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3102,7 +3231,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3110,26 +3239,26 @@ This usually causes the application icon in the task bar to animate in some fash
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3144,10 +3273,48 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3160,7 +3327,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3175,7 +3342,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3183,22 +3350,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3206,7 +3373,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation type="unfinished"></translation>
     </message>
diff --git a/resources/langs/nheko_de.ts b/resources/langs/nheko_de.ts
index c499874b1..9e1014839 100644
--- a/resources/langs/nheko_de.ts
+++ b/resources/langs/nheko_de.ts
@@ -35,28 +35,10 @@
         <translation>Mikrofon stumm schalten</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Auf Bestätigung warten</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Wartet darauf, dass die andere Seite die Verifizierung abschließt.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Abbrechen</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation>
             <numerusform>%1 und %n anderer Teilnehmer</numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Videoanruf</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>Geräte</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Akzeptieren</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Unbekanntes Mikrofon: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Unbekannte Kamera: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Ablehnen</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Kein Mikrofon gefunden.</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Nutzer konnte nicht eingeladen werden: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Eingeladener Benutzer: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Das Migrieren des Caches auf die aktuelle Version ist fehlgeschlagen. Das kann verschiedene Gründe als Ursache haben. Bitte melde den Fehler und verwende in der Zwischenzeit eine ältere Version. Alternativ kannst du den Cache manuell löschen.</translation>
     </message>
@@ -194,7 +176,7 @@
         <translation>Nutzer %1 (%2) wirklich einladen?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Einladung von %1 in Raum %2 fehlgeschlagen: %3</translation>
     </message>
@@ -254,7 +236,7 @@
         <translation>Verbannung aufgehoben: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Möchtest du wirklich eine private Konversation mit %1 beginnen?</translation>
     </message>
@@ -317,10 +299,15 @@
         <translation>Konnte den Raum nicht verlassen: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Konnte %1 nicht aus %2 entfernen: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation>Keine Netzwerkverbindung</translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Geheimnisse entschlüsseln</translation>
     </message>
@@ -429,12 +416,12 @@
         <translation>Verifizierungscode</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Bitte verifiziere die folgenden Ziffern. Stelle sicher dass beide Seiten die gleichen Zahlen sehen. Wenn diese sich unterscheiden, bitte klicke auf &apos;Sie stimmen nicht überein!&apos; um die Verifizierung abzubrechen!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Sie stimmen nicht überein!</translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Anwenden</translation>
     </message>
@@ -475,7 +462,7 @@
         <translation>Suche</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Leute</translation>
     </message>
@@ -523,12 +510,12 @@
         <translation>Verifizierungscode</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Bitte verifiziere die folgenden Emoji. Stelle sicher dass beide Seiten die gleichen Emoji sehen. Wenn diese sich unterscheiden, bitte klicke auf &apos;Sie stimmen nicht überein!&apos; um die Verifizierung abzubrechen!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>Sie stimmen nicht überein!</translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation>Kein Schlüssel für diese Nachricht vorhanden. Wir haben den Schlüssel automatisch angefragt, aber wenn du ungeduldig bist, kannst du den Schlüssel nocheinmal anfragen.</translation>
     </message>
@@ -612,7 +599,7 @@
         <translation>Verifizierung fehlgeschlagen</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>Die andere Seite unterstützt keines unserer Verifizierungsprotokolle.</translation>
     </message>
@@ -642,7 +629,7 @@
         <translation>Unbekannter Verifizierungsfehler.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Schließen</translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Nachricht weiterleiten</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation>Konnte die versteckten Events nicht ändern: %1</translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation>Versteckte Events für %1</translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation>Versteckte Events</translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation>Diese Events werden &lt;b&gt;angezeigt&lt;/b&gt; in %1:</translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation>Diese Events werden &lt;b&gt;angezeigt&lt;/b&gt; in allen Räumen:</translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation>Benutzeränderungen</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation>Betreten und verlassen des Raumes so wie Bild- und Namesänderungen und Verbannungen.</translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation>Berechtigungsveränderungen</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation>Werden gesendet, wenn Leute zu Moderatoren ernannt werden, herabgestuft werden oder die erlaubten Nachrichtentypen geändert werden.</translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation>Sticker</translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation>Bilderpackung bearbeiten</translation>
     </message>
@@ -698,34 +742,34 @@
         <translation>Wähle ein Vorschaubild für diese Packung aus</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation>Eindeutiger Name</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation>Paketname</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation>Attribution</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation>Als Emoji verwenden</translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation>Als Sticker verwenden</translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation>Abkürzung</translation>
     </message>
@@ -735,7 +779,7 @@
         <translation>Beschreibung</translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation>Vom Paket entfernen</translation>
     </message>
@@ -768,7 +812,7 @@
         <translation>Neue private Packung</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation>Neue raumspezifische Packung</translation>
     </message>
@@ -803,7 +847,7 @@
         <translation>Bearbeiten</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation>Schließen</translation>
     </message>
@@ -821,7 +865,7 @@
         <translation>Alle Dateien (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Medienupload fehlgeschlagen. Bitte versuche es erneut.</translation>
     </message>
@@ -834,7 +878,7 @@
         <translation>Lade Benutzer in %1 ein</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation>Benutzer-ID, die eingeladen werden soll</translation>
     </message>
@@ -868,7 +912,7 @@
         <translation>Raum betreten</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation>Raum-ID oder -Alias</translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Matrix-ID</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>z.B. @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -920,7 +964,7 @@ Wenn Nheko deinen Server nicht automatisch erkennen kann, bekommst du eine Einga
         <translation>Dein Passwort.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Gerätename</translation>
     </message>
@@ -930,7 +974,7 @@ Wenn Nheko deinen Server nicht automatisch erkennen kann, bekommst du eine Einga
         <translation>Ein Name für dieses Gerät, das der anderen Seite gezeigt wird, wenn das Gerät verifiziert wird. Wird nichts angegeben, wird einer generiert.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Heimserveradresse</translation>
     </message>
@@ -940,27 +984,32 @@ Wenn Nheko deinen Server nicht automatisch erkennen kann, bekommst du eine Einga
         <translation>dein.server:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>Die Adresse unter der dein Heimserver erreichbar ist.
 Beispiel: https://mein.server:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>ANMELDEN</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation>Zurück</translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Du hast eine invalide Matrix ID eingegeben. Normalerwise sehen die so aus: @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Automatische Erkennung fehlgeschlagen. Antwort war fehlerhaft.</translation>
     </message>
@@ -970,7 +1019,7 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Automatische Erkennung fehlgeschlagen. Unbekannter Fehler bei Anfrage .well-known.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Benötigte Ansprechpunkte nicht auffindbar. Möglicherweise kein Matrixserver.</translation>
     </message>
@@ -985,17 +1034,17 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Ein unbekannter Fehler ist aufgetreten. Bitte Homeserverdomain prüfen.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>SSO ANMELDUNG</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Leeres Passwort</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>SSO Anmeldung fehlgeschlagen</translation>
     </message>
@@ -1021,67 +1070,67 @@ Beispiel: https://mein.server:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
-        <translation>entfernt</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation>%1 hat eine Nachricht gelöscht</translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
-        <translation>Verschlüsselung aktiviert</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation>%1 hat die Verschlüsselung aktiviert</translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>Raumname wurde gändert auf: %1</translation>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation>%2 hat den Raumnamen geändert auf: %1</translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>Raumname wurde entfernt</translation>
+        <source>%1 removed the room name</source>
+        <translation>%1 hat den Raumnamen entfernt</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>Raumthema wurde geändert auf: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation>%2 hat das Thema geändert auf: %1</translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>Thema wurde entfernt</translation>
+        <source>%1 removed the topic</source>
+        <translation>%1 hat das Raumthema entfernt</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation>%1 hat dem Raumavatar geändert</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation>%1 hat die angehefteten Nachrichten geändert.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation>%1 hat die Sticker und Emotes in diesem Raum geändert.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation>%1 hat die Addressen dieses raumes geändert.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation>%1 hat die übergeordneten Spaces für diesen Raum geändert.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 hat den Raum erstellt: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 hat einen Sprachanruf gestartet.</translation>
     </message>
@@ -1096,22 +1145,22 @@ Beispiel: https://mein.server:8787</translation>
         <translation>%1 hat angerufen.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation>%1 hat den Anruf angenommen.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 hat den Anruf beendet.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
-        <translation>Wählt…</translation>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
+        <translation>%1 wartet auf Verbindung...</translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation>Reinlassen</translation>
     </message>
@@ -1119,7 +1168,7 @@ Beispiel: https://mein.server:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Auflegen</translation>
     </message>
@@ -1129,17 +1178,17 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Anrufen</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Versende Datei</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Schreibe eine Nachricht…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation>Sticker</translation>
     </message>
@@ -1162,7 +1211,7 @@ Beispiel: https://mein.server:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Bearbeiten</translation>
     </message>
@@ -1182,19 +1231,19 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Optionen</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation>&amp;Kopieren</translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation>Kopiere &amp;Link</translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation>Re&amp;agieren</translation>
     </message>
@@ -1229,7 +1278,7 @@ Beispiel: https://mein.server:8787</translation>
         <translation>&amp;Weiterleiten</translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation>Als gelesen &amp;markieren</translation>
     </message>
@@ -1282,7 +1331,7 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Verifizierungsanfrage erhalten</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation>Damit andere Nutzer sehen, welche Geräte tatsächlich dir gehören, kannst du sie verifizieren. Das erlaubt auch Schlüsselbackup zu nutzen ohne ein Passwort einzugeben. Jetzt ein unverifiziertes Gerät verifizieren? (Bitte stelle sicher, dass sich das unverifizierte Gerät in deiner Nähe befindet.)</translation>
     </message>
@@ -1312,7 +1361,7 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Dein Gerät %1 hat angefragt verifiziert zu werden.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Abbrechen</translation>
     </message>
@@ -1385,7 +1434,7 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Kein Mikrofon gefunden.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Sprache</translation>
     </message>
@@ -1400,7 +1449,7 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Bildschirm</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Abbrechen</translation>
     </message>
@@ -1416,7 +1465,7 @@ Beispiel: https://mein.server:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Benutze ein separates Profil, wodurch mehrere Accounts und Nheko-Instanzen zur gleichen Zeit verwendet werden können.</translation>
     </message>
@@ -1434,7 +1483,7 @@ Beispiel: https://mein.server:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation>Lesebestätigungen</translation>
     </message>
@@ -1450,63 +1499,88 @@ Beispiel: https://mein.server:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Benutzername</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>Der Benutzername sollte nicht leer sein und nur aus a-z, 0-9, ., _, =, - und / bestehen.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation>Zurück</translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Passwort</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Bitte wähle ein sicheres Passwort. Die genauen Anforderungen bestimmt dein Server.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Passwortbestätigung</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Heimserver</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation>dein.server</translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Ein Server, der Registrierungen zulässt. Weil Matrix ein dezentralisiertes Protokoll ist, musst du erst einen Server ausfindig machen oder einen persönlichen Server aufsetzen.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation>Deine Passwörter stimmen nicht überein!</translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation>Gerätename</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation>Ein Name für dieses Gerät, das der anderen Seite gezeigt wird, wenn das Gerät verifiziert wird. Wird nichts angegeben, wird einer generiert.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>REGISTRIEREN</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Automatische Erkennung fehlgeschlagen. Antwort war fehlerhaft.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation>Automatische Erkennung fehlgeschlagen. Unbekannter Fehler bei Anfrage .well-known.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Benötigte Ansprechpunkte nicht auffindbar. Möglicherweise kein Matrixserver.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation>Erhaltene Antwort war fehlerhaft. Bitte Homeserverdomain prüfen.</translation>
     </message>
@@ -1516,25 +1590,35 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Ein unbekannter Fehler ist aufgetreten. Bitte Homeserverdomain prüfen.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Passwort nicht lang genug (mind. 8 Zeichen)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation>Server unterstützt das Abfragen der Registrierungmöglichkeiten nicht!</translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Passwörter stimmen nicht überein</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation>Server unterstützt keine Registrierung.</translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Ungültiger Servername</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation>Illegaler Benutzername.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation>Benutzername ist bereits in Verwendung.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation>Teil des reservierten Namesraumes.</translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Schließen</translation>
     </message>
@@ -1547,17 +1631,17 @@ Beispiel: https://mein.server:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation>Öffentliche Räume erkunden</translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation>Suche nach öffentlichen Räumen</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation>Wähle einen anderen Server aus</translation>
     </message>
@@ -1565,7 +1649,7 @@ Beispiel: https://mein.server:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>keine Version gespeichert</translation>
     </message>
@@ -1613,7 +1697,7 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Neuen Tag erstellen…</translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation>Statusnachricht</translation>
     </message>
@@ -1633,7 +1717,7 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Setze eine Statusnachricht</translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation>Abmelden</translation>
     </message>
@@ -1661,7 +1745,7 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Schließen</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation>Neues Gespräch beginnen</translation>
     </message>
@@ -1681,7 +1765,12 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Raumverzeichnis</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation>Räume suchen (Strg+K)</translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation>Benutzereinstellungen</translation>
     </message>
@@ -1694,7 +1783,7 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Teilnehmer in %1</translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation>
@@ -1731,12 +1820,12 @@ Beispiel: https://mein.server:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation>Raumeinstellungen</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation>
             <numerusform>%n Mitglied</numerusform>
@@ -1829,6 +1918,21 @@ Beispiel: https://mein.server:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation>Ändere welche Packungen aktiviert sind, entferne oder erstelle neue Packungen</translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation>Versteckte Events</translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation>Konfigurieren</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation>Wähle aus, weche Events in diesem Raum angezeigt werden</translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1879,7 +1983,7 @@ Beispiel: https://mein.server:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation>Offene Einladung.</translation>
     </message>
@@ -1889,7 +1993,7 @@ Beispiel: https://mein.server:8787</translation>
         <translation>Vorschau dieses Raums</translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation>Keine Vorschau verfügbar</translation>
     </message>
@@ -1897,7 +2001,7 @@ Beispiel: https://mein.server:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation>Bitte gib dein Anmeldepassword an um fortzufahren:</translation>
     </message>
@@ -1979,7 +2083,7 @@ Beispiel: https://mein.server:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation>Verbindung zum kryptografischen Speicher fehlgeschlagen</translation>
     </message>
@@ -2139,12 +2243,12 @@ Wenn du verifizieren wählst, musst du dein anderes Gerät zur Hand haben. Wenn
         <translation>Erfolgreiche Verifizierung</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Verifizierung erfolgreich! Beide Seiten haben ihre Geräte verifiziert!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Schließen</translation>
     </message>
@@ -2152,7 +2256,7 @@ Wenn du verifizieren wählst, musst du dein anderes Gerät zur Hand haben. Wenn
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Nachricht zurückziehen fehlgeschlagen: %1</translation>
@@ -2270,12 +2374,27 @@ Reason: %4</source>
 Grund: %4</translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 wurde eingeladen.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation>%2 hat die Einladung an %1 zurückgezogen.</translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation>%2 hat %1 aus dem Raum entfernt.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation>%2 hat die Verbannung von %1 zurückgezogen.</translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation>%2 hat das Anklopfen von %1 abgewiesen.</translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 hat den Avatar geändert.</translation>
     </message>
@@ -2300,47 +2419,32 @@ Grund: %4</translation>
         <translation>%1 hat die Einladung abgewiesen.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Hat die Einladung an %1 zurückgezogen.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 hat den Raum verlassen.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>%1 wurde gekickt.</translation>
+        <location line="+26"/>
+        <source>Reason: %1</source>
+        <translation>Grund: %1</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>Hat die Verbannung von %1 zurückgezogen.</translation>
+        <location line="-19"/>
+        <source>%1 redacted their knock.</source>
+        <translation>%1 hat das Anklopfen zurückgezogen.</translation>
     </message>
     <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 wurde gebannt.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
-        <source>Reason: %1</source>
-        <translation>Grund: %1</translation>
-    </message>
-    <message>
-        <location line="-19"/>
-        <source>%1 redacted their knock.</source>
-        <translation>%1 hat das Anklopfen zurückgezogen.</translation>
-    </message>
-    <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Du bist dem Raum beigetreten.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation>%1 hat %2 eingeladen.</translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation>%1 hat den eigenen Avatar und Namen geändert zu %2.</translation>
     </message>
@@ -2350,18 +2454,18 @@ Grund: %4</translation>
         <translation>%1 hat den eigenen Namen geändert zu %2.</translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Hat das Anklopfen von %1 abgewiesen.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 hat den Raum verlassen, obwohl er gar nicht mehr am Raum teilnahm!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation>%1 hat %2 verbannt</translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 hat angeklopft.</translation>
     </message>
@@ -2369,7 +2473,7 @@ Grund: %4</translation>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Bearbeitet</translation>
     </message>
@@ -2415,17 +2519,17 @@ Grund: %4</translation>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Zurück zur Raumliste</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Kein Raum ausgewählt</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation>Dieser Raum ist nicht verschlüsselt!</translation>
     </message>
@@ -2483,7 +2587,7 @@ Grund: %4</translation>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Zeigen</translation>
     </message>
@@ -2496,7 +2600,7 @@ Grund: %4</translation>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation>Keine bekannten Wege zur Authentifizierung!</translation>
     </message>
@@ -2521,7 +2625,7 @@ Grund: %4</translation>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Globales Nutzerprofil</translation>
     </message>
@@ -2531,7 +2635,7 @@ Grund: %4</translation>
         <translation>Raumspezifisches Nutzerprofil</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation>Ändere das Profilbild in allen Räumen.</translation>
     </message>
@@ -2541,7 +2645,7 @@ Grund: %4</translation>
         <translation>Ändere das Profilbild nur in diesem Raum.</translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation>Ändere den Anzeigenamen in allen Räumen.</translation>
     </message>
@@ -2561,7 +2665,7 @@ Grund: %4</translation>
         <translation>Dies ist das raumspezifische Nutzerprofil. Der Anzeigename und das Profilbild kann sich von dem globalen Profil unterscheiden.</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation>Öffne das globale Profil des Nutzers.</translation>
     </message>
@@ -2645,102 +2749,118 @@ Grund: %4</translation>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>Standard</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation>Erscheinungsbild</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation>Skalierungsfaktor</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation>Hebe Nachrichten unter dem Mauszeiger hervor</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation>Große Emoji in der Nachrichtenliste</translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
         <source>Minimize to tray</source>
         <translation>Ins Benachrichtigungsfeld minimieren</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
         <translation>Im Benachrichtigungsfeld starten</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
         <translation>Gruppen-Seitenleiste</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Runde Profilbilder</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation>Sende Nachrichten als Markdown formatiert</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>Profil: %1</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation>Nachrichtenblasen aktivieren</translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>Standard</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation>Kleine Avatare</translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>TELEFONATE</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation>Animiete Bilder nur abspielen, wenn die Maus über diesen ist</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation>Cross-Signing Schlüssel</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation>Schreibbenachrichtigungen</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>ANFRAGEN</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation>Sortiere ungelesene Räume zuerst</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>DOWNLOADEN</translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation>Zeige Buttons in der Historie</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Applikation im Hintergrund weiterlaufen lassen.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation>Mache die Nachrichtenliste schmaler</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Starte die Applikation im Hintergrund ohne ein Fenster zu öffnen.</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation>Lesebestätigungen</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Ändert das Aussehen von Benutzeravataren.
-AUS - Quadratisch, AN - Kreis.</translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation>Desktopbenachrichtigungen</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation>Benutze Identicons</translation>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation>Bei Nachrichten Fenster hervorheben</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Seitenleiste mit Gruppen und Tags neben der Raumliste.</translation>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation>Runde Profilbilder</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Entschlüssele Nachrichten in der Raumliste</translation>
+        <location line="+2"/>
+        <source>Use identicons</source>
+        <translation>Benutze Identicons</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Entschlüssle Nachrichten in der Seitenliste.
-Betrifft nur Nachrichten in verschlüsselten Chats.</translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation>Entschlüssele Nachrichten in der Raumliste</translation>
     </message>
     <message>
         <location line="+2"/>
@@ -2749,310 +2869,319 @@ Betrifft nur Nachrichten in verschlüsselten Chats.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation>Die Zeitliste wird unscharf, wenn das Fenster den Fokus verliert.</translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation>Sichtschutz-Zeitbegrenzung (in Sekunden [0 - 3600])</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation>Zeitbegrenzung (in Sekunden) bis der Bildschirm verschwommen angezeigt wird, nachdem das Fenster den Fokus verliert.
-Bei 0 wird der Blickschutz sofort aktiv.
-Maximaler Wert ist eine Stunde (3600 Sekunden).</translation>
+        <source>Touchscreen mode</source>
+        <translation>Touchscreenmodus</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Zeige Buttons in der Historie</translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation>Schriftgröße</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Zeige Knöpfe für das schnelle Antworten, Reagieren und zusätzliche Optionen neben jeder Nachricht.</translation>
+        <source>Font Family</source>
+        <translation>Schriftart</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Mache die Nachrichtenliste schmaler</translation>
+        <source>Emoji Font Family</source>
+        <translation>Emojischriftart</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Setze die maximale Breite für die Nachrichtenliste (in Pixeln). Das kann Nachrichten auf breiten Bildschirmen verbessern, wenn Nheko im Vollbildmodus verwendet wird.</translation>
+        <source>Ringtone</source>
+        <translation>Klingelton</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Schreibbenachrichtigungen</translation>
+        <source>Microphone</source>
+        <translation>Mikrofon</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Zeige wer gerade in einem Raum tippt.
-Diese Einstellung steuert auch, ob das eigene Tippen an andere gesendet wird.</translation>
+        <source>Camera</source>
+        <translation>Kamera</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Sortiere ungelesene Räume zuerst</translation>
+        <location line="+2"/>
+        <source>Camera resolution</source>
+        <translation>Kameraauflösung</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Zeige Räume mit neuen Nachrichten zuerst an.
-Wenn das aus ist, werden die Räume in der Raumliste rein nach dem Sendezeitpunkt der letzten Nachricht sortiert.
-Wenn das eingeschaltet ist, werden Nachrichten mit aktiven Erwähnung zuerst sortiert (der rote Kreis). Danach kommen andere Benachrichtigungen (weißer Kreis) und zuletzt stummgeschaltete Räume sortiert nach deren Zeitstempel.</translation>
+        <source>Camera frame rate</source>
+        <translation>Bildwiederholungsrate der Kamera</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Lesebestätigungen</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation>Erlaube den Fallbackassistenzserver zu verwenden</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Zeige ob eine Nachricht gelesen wurde.
-Der Status wird neben der Nachricht angezeigt.</translation>
+        <source>Send encrypted messages to verified users only</source>
+        <translation>Sende verschlüsselte Nachrichten nur an verifizierte Nutzer</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Sende Nachrichten als Markdown formatiert</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation>Teile Schlüssel mit verifizierten Nutzern und Geräten</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Nutze Markdown als Format für Nachrichten.
-Wenn deaktiviert werden alle Nachrichten als unformatierter Text gesendet.</translation>
+        <source>Online Key Backup</source>
+        <translation>Onlinenachrichtenschlüsselspeicher</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
-        <translation>Animiete Bilder nur abspielen, wenn die Maus über diesen ist</translation>
+        <source>Profile</source>
+        <translation>Profil</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Desktopbenachrichtigungen</translation>
+        <location line="+2"/>
+        <source>User ID</source>
+        <translation>Anmeldename</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Zeige Benachrichtigungen für empfangene Nachrichten, wenn der Client ist nicht fokussiert.</translation>
+        <source>Accesstoken</source>
+        <translation>Zugriffstoken</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Bei Nachrichten Fenster hervorheben</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation>Geräte-ID</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Hebe das Fenster hervor, wenn eine Nachricht empfangen wurde.
-Normalerweise animiert das den Taskbaricon oder färbt das Fenster orange ein.</translation>
+        <source>Device Fingerprint</source>
+        <translation>Gerätefingerabdruck</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Hebe Nachrichten unter dem Mauszeiger hervor</translation>
+        <source>Homeserver</source>
+        <translation>Heimserver</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Ändert die Hintergrundfarbe von Nachrichten, wenn der Mauszeiger über ihnen ist.</translation>
+        <source>Version</source>
+        <translation>Version</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Große Emoji in der Nachrichtenliste</translation>
+        <location line="+2"/>
+        <source>Platform</source>
+        <translation>Plattform</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Erhöht die Schriftgröße, wenn die Nachricht nur aus ein paar Emoji besteht.</translation>
+        <source>GENERAL</source>
+        <translation>ALLGEMEINES</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
-        <translation>Sende verschlüsselte Nachrichten nur an verifizierte Nutzer</translation>
+        <location line="+2"/>
+        <source>TIMELINE</source>
+        <translation>NACHRICHTENLISTE</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
-        <translation>Sendet Schlüssel für verschlüsselte Nachrichten nur an verifizierte Geräte. Das erhöht die Sicherheit, aber macht die Ende-zu-Ende Verschlüsselung komplizierter, weil jeder Nutzer verifiziert werden muss.</translation>
+        <source>SIDEBAR</source>
+        <translation>SEITENLEISTE</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Teile Schlüssel mit verifizierten Nutzern und Geräten</translation>
+        <source>TRAY</source>
+        <translation>STATUSZEILE</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation>Automatisch Schlüssel an verifizierte Nutzer weiterleiten, auch wenn der Nutzer eigentlich keinen Zugriff auf diese Schlüssel haben sollte.</translation>
+        <source>NOTIFICATIONS</source>
+        <translation>BENACHRICHTIGUNGEN</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation>Onlinenachrichtenschlüsselspeicher</translation>
+        <source>CALLS</source>
+        <translation>TELEFONATE</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
-        <translation>Speichere eine Kopie der Nachrichtenschlüssel verschlüsselt auf dem Server.</translation>
+        <source>ENCRYPTION</source>
+        <translation>VERSCHLÃœSSELUNG</translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
-        <translation>Onlinenachrichtenschlüsselspeicher aktivieren</translation>
+        <location line="+2"/>
+        <source>INFO</source>
+        <translation>INFO</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation>Die Nhekoentwickler empfehlen aktuell nicht die Onlinesicherung zu ativieren bevor die symmetrische Methode zu verfügung steht. Trotzdem aktivieren?</translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation>Sitzungsschlüssel</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>IM CACHE</translation>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
+        <translation>Kreuzverifizierungsschlüssel</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>NICHT IM CACHE</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation>Online Backupschlüssel</translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Skalierungsfaktor</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation>Selbstverifizierungsschlüssel</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Ändere den Skalierungsfaktor für das gesamte Userinterface.</translation>
+        <source>User signing key</source>
+        <translation>Benutzerverifizierungsschlüssel</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Schriftgröße</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation>Masterverifizierungsschlüssel</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Schriftart</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation>Standard</translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Erscheinungsbild</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation>Ändere den Klingelton für eingehende Anrufe</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Klingelton</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation>Setze die maximale Breite für die Nachrichtenliste (in Pixeln). Das kann Nachrichten auf breiten Bildschirmen verbessern, wenn Nheko im Vollbildmodus verwendet wird.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Ändere den Klingelton für eingehende Anrufe</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation>Zeitbegrenzung (in Sekunden) bis der Bildschirm verschwommen angezeigt wird, nachdem das Fenster den Fokus verliert.
+Bei 0 wird der Blickschutz sofort aktiv.
+Maximaler Wert ist eine Stunde (3600 Sekunden).</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Mikrofon</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation>Ändert die Hintergrundfarbe von Nachrichten, wenn der Mauszeiger über ihnen ist.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Kamera</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation>Erhöht die Schriftgröße, wenn die Nachricht nur aus ein paar Emoji besteht.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Kameraauflösung</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation>Applikation im Hintergrund weiterlaufen lassen.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Bildwiederholungsrate der Kamera</translation>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation>Starte die Applikation im Hintergrund ohne ein Fenster zu öffnen.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Erlaube den Fallbackassistenzserver zu verwenden</translation>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation>Seitenleiste mit Gruppen und Tags neben der Raumliste.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>Dies verwendet matrix.org Server als Assistent, wenn der eigene Homeserver keinen anbietet oder unzureichend ist.</translation>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation>Nutze Markdown als Format für Nachrichten.
+Wenn deaktiviert werden alle Nachrichten als unformatierter Text gesendet.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>Geräte-ID</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation>Nachrichtenblasen als Layout der Nachrichtenliste.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Gerätefingerabdruck</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation>Benutzerbilder werden verkleinert um über die Nachricht zu passen.</translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Sitzungsschlüssel</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation>Spiele Medien wie GIF oder WEBP nur ab, wenn du die Maus darüber bewegst.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation>Zeige wer gerade in einem Raum tippt.
+Diese Einstellung steuert auch, ob das eigene Tippen an andere gesendet wird.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPORTIEREN</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation>Zeige Räume mit neuen Nachrichten zuerst an.
+Wenn das aus ist, werden die Räume in der Raumliste rein nach dem Sendezeitpunkt der letzten Nachricht sortiert.
+Wenn das eingeschaltet ist, werden Nachrichten mit aktiven Erwähnung zuerst sortiert (der rote Kreis). Danach kommen andere Benachrichtigungen (weißer Kreis) und zuletzt stummgeschaltete Räume sortiert nach deren Zeitstempel.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>EXPORTIEREN</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation>Zeige Knöpfe für das schnelle Antworten, Reagieren und zusätzliche Optionen neben jeder Nachricht.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>VERSCHLÃœSSELUNG</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation>Zeige ob eine Nachricht gelesen wurde.
+Der Status wird neben der Nachricht angezeigt.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>ALLGEMEINES</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation>Zeige Benachrichtigungen für empfangene Nachrichten, wenn der Client ist nicht fokussiert.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>OBERFLÄCHE</translation>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation>Hebe das Fenster hervor, wenn eine Nachricht empfangen wurde.
+Normalerweise animiert das den Taskbaricon oder färbt das Fenster orange ein.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation>Ändert das Aussehen von Benutzeravataren.
+AUS - Quadratisch, AN - Kreis.</translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation>Zeigen einen &quot;Identicon&quot; anstelle eines Buchstaben, wenn etwas keinen Avatar gesetzt hat.</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation>Spiele Medien wie GIF oder WEBP nur ab, wenn du die Maus darüber bewegst.</translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation>Entschlüssle Nachrichten in der Seitenliste.
+Betrifft nur Nachrichten in verschlüsselten Chats.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Touchscreenmodus</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation>Die Zeitliste wird unscharf, wenn das Fenster den Fokus verliert.</translation>
     </message>
     <message>
         <location line="+2"/>
@@ -3060,52 +3189,52 @@ Normalerweise animiert das den Taskbaricon oder färbt das Fenster orange ein.</
         <translation>Deaktiviert Textselektion in Nachrichten, damit das nicht beim Scrollen mit den Fingern stört.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Emojischriftart</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation>Ändere den Skalierungsfaktor für das gesamte Userinterface.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Masterverifizierungsschlüssel</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation>Dies verwendet matrix.org Server als Assistent, wenn der eigene Homeserver keinen anbietet oder unzureichend ist.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>Der wichtigste Schlüssel. Muss nicht lokal gecachet wrden, weil es das schwieriger macht ihn auszulesen und dadurch das Rotieren der anderen Schlüsel leichter ist.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation>Sendet Schlüssel für verschlüsselte Nachrichten nur an verifizierte Geräte. Das erhöht die Sicherheit, aber macht die Ende-zu-Ende Verschlüsselung komplizierter, weil jeder Nutzer verifiziert werden muss.</translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>Benutzerverifizierungsschlüssel</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation>Automatisch Schlüssel an verifizierte Nutzer weiterleiten, auch wenn der Nutzer eigentlich keinen Zugriff auf diese Schlüssel haben sollte.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>Der Schlüssel um andere Nutzer zu verifizieren. Wenn der lokal zwischengespeichert ist, dann werden durch eine Nutzerverifizierung alle Geräte verifiziert.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation>Speichere eine Kopie der Nachrichtenschlüssel verschlüsselt auf dem Server.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation>Selbstverifizierungsschlüssel</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation>Der Schlüssel um Schlüssel aus der Onlinesicherung zu laden. Wenn dieser vorhanden ist, können die Schlüssel für verschlüsselte Nachrichten sicher online gespeichert und wieder runtergeladen werden.</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation>Der Schlüssel um deine eigenen Geräte zu verifizieren. Wenn dieser lokal zwischengespeichert ist, dann werden durch eine Verifizierung eines deiner eigenen Geräte diese für alle deine anderen Geräte und für andere Nutzer als verifiziert makiert.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Sicherungsschlüssel</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation>Der Schlüssel um andere Nutzer zu verifizieren. Wenn der lokal zwischengespeichert ist, dann werden durch eine Nutzerverifizierung alle Geräte verifiziert.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation>Der Schlüssel um Schlüssel aus der Onlinesicherung zu laden. Wenn dieser vorhanden ist, können die Schlüssel für verschlüsselte Nachrichten sicher online gespeichert und wieder runtergeladen werden.</translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation>Der wichtigste Schlüssel. Muss nicht lokal gecachet wrden, weil es das schwieriger macht ihn auszulesen und dadurch das Rotieren der anderen Schlüsel leichter ist.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
         <translation>Datei auswählen</translation>
     </message>
@@ -3115,7 +3244,7 @@ Normalerweise animiert das den Taskbaricon oder färbt das Fenster orange ein.</
         <translation>Alle Dateien (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
         <translation>Öffne Sessions Datei</translation>
     </message>
@@ -3123,26 +3252,26 @@ Normalerweise animiert das den Taskbaricon oder färbt das Fenster orange ein.</
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
         <translation>Feher</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
         <translation>Password für Datei</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
         <translation>Bitte gib das Passwort zum Enschlüsseln der Datei ein:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
         <translation>Das Passwort darf nicht leer sein</translation>
     </message>
@@ -3157,10 +3286,48 @@ Normalerweise animiert das den Taskbaricon oder färbt das Fenster orange ein.</
         <translation>Datei zum Speichern der zu exportierenden Sitzungsschlüssel</translation>
     </message>
 </context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>ANFRAGEN</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>DOWNLOADEN</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>IM CACHE</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>NICHT IM CACHE</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation>Zurück</translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPORTIEREN</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>EXPORTIEREN</translation>
+    </message>
+</context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation>Keinen verschlüsselten Chat mit diesem User gefunden. Erstelle einen verschlüsselten 1:1 Chat mit diesem Nutzer und versuche es erneut.</translation>
     </message>
@@ -3173,7 +3340,7 @@ Normalerweise animiert das den Taskbaricon oder färbt das Fenster orange ein.</
         <translation>Auf Gegenseite warten…</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Es wird gewartet, dass die andere Seite die Verifizierungsanfrage akzeptiert.</translation>
     </message>
@@ -3188,7 +3355,7 @@ Normalerweise animiert das den Taskbaricon oder färbt das Fenster orange ein.</
         <translation>Es wird gewartet, dass die andere Seite den Verifizierungsprozess abschließt.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Abbrechen</translation>
     </message>
@@ -3196,22 +3363,22 @@ Normalerweise animiert das den Taskbaricon oder färbt das Fenster orange ein.</
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Willkommen bei Nheko! Ein Desktop-Client für das Matrix-Protokoll.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Viel Vergnügen!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>REGISTRIEREN</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>ANMELDEN</translation>
     </message>
@@ -3219,7 +3386,7 @@ Normalerweise animiert das den Taskbaricon oder färbt das Fenster orange ein.</
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Gestern</translation>
     </message>
diff --git a/resources/langs/nheko_el.ts b/resources/langs/nheko_el.ts
index 13ffaf005..96adfb86b 100644
--- a/resources/langs/nheko_el.ts
+++ b/resources/langs/nheko_el.ts
@@ -35,28 +35,10 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation type="unfinished">Άκυρο</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation type="unfinished"></translation>
     </message>
@@ -106,27 +88,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation type="unfinished">Αποδοχή</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation type="unfinished">Απόρριψη</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -194,7 +176,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
@@ -254,7 +236,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -317,10 +299,15 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation type="unfinished"></translation>
     </message>
@@ -429,12 +416,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation type="unfinished"></translation>
     </message>
@@ -475,7 +462,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation type="unfinished"></translation>
     </message>
@@ -523,12 +510,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -612,7 +599,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -642,7 +629,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -698,34 +742,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -735,7 +779,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -768,7 +812,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -803,7 +847,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -821,7 +865,7 @@
         <translation type="unfinished">Όλα τα αρχεία (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -834,7 +878,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished">Όνομα χρήστη</translation>
     </message>
@@ -868,7 +912,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished">ID ή όνομα συνομιλίας</translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Matrix ID</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>π.χ @john:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -917,7 +961,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation type="unfinished"></translation>
     </message>
@@ -927,7 +971,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation type="unfinished"></translation>
     </message>
@@ -937,26 +981,31 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>ΕΙΣΟΔΟΣ</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -966,7 +1015,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -981,17 +1030,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Κενός κωδικός</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1017,67 +1066,67 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
+        <source>%1 removed the room name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
+        <source>%1 removed the topic</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1092,22 +1141,22 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1115,7 +1164,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1125,17 +1174,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation type="unfinished">Γράψε ένα μήνυμα...</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1158,7 +1207,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1178,19 +1227,19 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1225,7 +1274,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1278,7 +1327,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1308,7 +1357,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation type="unfinished">Άκυρο</translation>
     </message>
@@ -1381,7 +1430,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1396,7 +1445,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation type="unfinished">Άκυρο</translation>
     </message>
@@ -1412,7 +1461,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1430,7 +1479,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1446,63 +1495,88 @@ Example: https://server.my:8787</source>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Όνομα χρήστη</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Κωδικός</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Επαλήθευση κωδικού</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>ΕΓΓΡΑΦΗ</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1512,25 +1586,35 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Ο κωδικός δεν αποτελείται από αρκετους χαρακτήρες</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Οι κωδικοί δεν ταιριίαζουν</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Λανθασμένο όνομα διακομιστή</translation>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1543,17 +1627,17 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1561,7 +1645,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1609,7 +1693,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1629,7 +1713,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1657,7 +1741,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1677,7 +1761,12 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1690,7 +1779,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1727,12 +1816,12 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1825,6 +1914,21 @@ Example: https://server.my:8787</source>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1875,7 +1979,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1885,7 +1989,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1893,7 +1997,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1975,7 +2079,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2133,12 +2237,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2146,7 +2250,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished"></translation>
@@ -2263,62 +2367,57 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
-        <source>%1 changed their avatar.</source>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>%1 changed some profile info.</source>
+        <source>%2 unbanned %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+5"/>
-        <source>%1 joined.</source>
+        <source>%2 rejected the knock from %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>%1 joined via authorisation from %2&apos;s server.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+11"/>
-        <source>%1 rejected their invite.</source>
+        <location line="-35"/>
+        <source>%1 changed their avatar.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
+        <source>%1 changed some profile info.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>%1 left the room.</source>
+        <location line="+5"/>
+        <source>%1 joined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
+        <location line="+3"/>
+        <source>%1 joined via authorisation from %2&apos;s server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
+        <location line="+11"/>
+        <source>%1 rejected their invite.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
+        <location line="+5"/>
+        <source>%1 left the room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2328,12 +2427,17 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2343,18 +2447,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
+        <location line="+39"/>
+        <source>%1 left after having already left!</source>
+        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>%1 left after having already left!</source>
-        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2362,7 +2466,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2408,17 +2512,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2476,7 +2580,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Εμφάνιση</translation>
     </message>
@@ -2489,7 +2593,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2514,7 +2618,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2524,7 +2628,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2534,7 +2638,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2554,7 +2658,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2638,99 +2742,117 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
     <message>
-        <location line="+579"/>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Φόντο</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>Ελαχιστοποίηση</translation>
+        <translation type="unfinished">Ελαχιστοποίηση</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
+        <location line="+2"/>
+        <source>Typing notifications</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
+        <location line="+2"/>
+        <source>Read receipts</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
+        <location line="+2"/>
+        <source>Alert on notification</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
+        <location line="+2"/>
+        <source>Use identicons</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
+        <source>Decrypt messages in sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -2740,301 +2862,308 @@ Only affects messages in encrypted chats.</source>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <source>Touchscreen mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
+        <location line="+2"/>
+        <source>Font size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <source>Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
+        <source>Emoji Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <source>Ringtone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
+        <source>Microphone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
+        <source>Camera</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
+        <location line="+2"/>
+        <source>Camera resolution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <source>Camera frame rate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
+        <source>Send encrypted messages to verified users only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
+        <source>Online Key Backup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Profile</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
+        <location line="+2"/>
+        <source>User ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
+        <source>Accesstoken</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
+        <location line="+2"/>
+        <source>Device ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <source>Device Fingerprint</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
+        <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
+        <source>Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
+        <location line="+2"/>
+        <source>Platform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation type="unfinished"></translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">ΓΕΝΙΚΑ</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>TIMELINE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>SIDEBAR</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
+        <source>TRAY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
+        <source>CALLS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>ENCRYPTION</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>INFO</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
+        <location line="+2"/>
+        <source>Session Keys</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
+        <location line="+2"/>
+        <source>Online backup key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
+        <location line="+2"/>
+        <source>Self signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
+        <source>User signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
+        <location line="+2"/>
+        <source>Master signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
+        <location line="+91"/>
+        <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Φόντο</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>ΓΕΝΙΚΑ</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -3043,52 +3172,52 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
         <translation type="unfinished">Διάλεξε ένα αρχείο</translation>
     </message>
@@ -3098,7 +3227,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished">Όλα τα αρχεία (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3106,26 +3235,26 @@ This usually causes the application icon in the task bar to animate in some fash
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3140,10 +3269,48 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3156,7 +3323,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3171,7 +3338,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation type="unfinished">Άκυρο</translation>
     </message>
@@ -3179,22 +3346,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Καλως ήρθες στο nheko!</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation> </translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>ΕΓΓΡΑΦΗ</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>ΕΙΣΟΔΟΣ</translation>
     </message>
@@ -3202,7 +3369,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation type="unfinished"></translation>
     </message>
diff --git a/resources/langs/nheko_en.ts b/resources/langs/nheko_en.ts
index 0d0091634..67a296767 100644
--- a/resources/langs/nheko_en.ts
+++ b/resources/langs/nheko_en.ts
@@ -35,28 +35,10 @@
         <translation>Mute Mic</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Awaiting Confirmation</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Waiting for other side to complete verification.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Cancel</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation>
             <numerusform>%1 and %n other</numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Video Call</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>Devices</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Accept</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Unknown microphone: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Unknown camera: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Decline</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>No microphone found.</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Failed to invite user: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Invited user: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</translation>
     </message>
@@ -194,7 +176,7 @@
         <translation>Do you really want to invite %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Failed to invite %1 to %2: %3</translation>
     </message>
@@ -254,7 +236,7 @@
         <translation>Unbanned user: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Do you really want to start a private chat with %1?</translation>
     </message>
@@ -317,10 +299,15 @@
         <translation>Failed to leave room: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Failed to kick %1 from %2: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation>No network connection</translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Decrypt secrets</translation>
     </message>
@@ -429,12 +416,12 @@
         <translation>Verification Code</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Please verify the following digits.  You should see the same numbers on both sides.  If they differ, please press &apos;They do not match!&apos; to abort verification!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>They do not match!</translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Apply</translation>
     </message>
@@ -475,7 +462,7 @@
         <translation>Search</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>People</translation>
     </message>
@@ -523,12 +510,12 @@
         <translation>Verification Code</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>They do not match!</translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</translation>
     </message>
@@ -612,7 +599,7 @@
         <translation>Verification failed</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>Other client does not support our verification protocol.</translation>
     </message>
@@ -642,7 +629,7 @@
         <translation>Unknown verification error.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Close</translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Forward Message</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation>Failed to set hidden events: %1</translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation>Hidden events for %1</translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation>Hidden events</translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation>User events</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation>Joins, leaves, avatar and name changes, bans, …</translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation>Power level changes</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation>Sent when a moderator is added/removed or the permissions of a room are changed.</translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation>Stickers</translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation>Editing image pack</translation>
     </message>
@@ -698,34 +742,34 @@
         <translation>Select overview image for pack</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation>State key</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation>Packname</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation>Attribution</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation>Use as Emoji</translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation>Use as Sticker</translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation>Shortcode</translation>
     </message>
@@ -735,7 +779,7 @@
         <translation>Body</translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation>Remove from pack</translation>
     </message>
@@ -768,7 +812,7 @@
         <translation>Create account pack</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation>New room pack</translation>
     </message>
@@ -803,7 +847,7 @@
         <translation>Edit</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation>Close</translation>
     </message>
@@ -821,7 +865,7 @@
         <translation>All Files (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Failed to upload media. Please try again.</translation>
     </message>
@@ -834,7 +878,7 @@
         <translation>Invite users to %1</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation>User ID to invite</translation>
     </message>
@@ -868,7 +912,7 @@
         <translation>Join room</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation>Room ID or alias</translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Matrix ID</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>e.g @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -920,7 +964,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation>Your password.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Device name</translation>
     </message>
@@ -930,7 +974,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Homeserver address</translation>
     </message>
@@ -940,27 +984,32 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation>server.my:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>The address that can be used to contact your homeservers client API.
 Example: https://server.my:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>LOGIN</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation>Back</translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>You have entered an invalid Matrix ID  e.g @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Autodiscovery failed. Received malformed response.</translation>
     </message>
@@ -970,7 +1019,7 @@ Example: https://server.my:8787</translation>
         <translation>Autodiscovery failed. Unknown error while requesting .well-known.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>The required endpoints were not found. Possibly not a Matrix server.</translation>
     </message>
@@ -985,17 +1034,17 @@ Example: https://server.my:8787</translation>
         <translation>An unknown error occured. Make sure the homeserver domain is valid.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>SSO LOGIN</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Empty password</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>SSO login failed</translation>
     </message>
@@ -1021,62 +1070,67 @@ Example: https://server.my:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+192"/>
-        <source>Encryption enabled</source>
-        <translation>Encryption enabled</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation>%1 removed a message</translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>room name changed to: %1</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation>%1 enabled encryption</translation>
+    </message>
+    <message>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation>%2 changed the room name to: %1</translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>removed room name</translation>
+        <source>%1 removed the room name</source>
+        <translation>%1 removed the room name</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>topic changed to: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation>%2 changed the topic to: %1</translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>removed topic</translation>
+        <source>%1 removed the topic</source>
+        <translation>%1 removed the topic</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation>%1 changed the room avatar</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation>%1 changed the pinned messages.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation>%1 changed the stickers and emotes in this room.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation>%1 changed the addresses for this room.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation>%1 changed the parent spaces for this room.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 created and configured room: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 placed a voice call.</translation>
     </message>
@@ -1091,27 +1145,22 @@ Example: https://server.my:8787</translation>
         <translation>%1 placed a call.</translation>
     </message>
     <message>
-        <location line="+38"/>
-        <source>Negotiating call...</source>
-        <translation>Negotiating call…</translation>
+        <location line="+41"/>
+        <source>%1 is negotiating the call...</source>
+        <translation>%1 is negotiating the call...</translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation>Allow them in</translation>
     </message>
     <message>
-        <location line="-95"/>
+        <location line="-102"/>
         <source>%1 answered the call.</source>
         <translation>%1 answered the call.</translation>
     </message>
     <message>
-        <location line="-148"/>
-        <source>removed</source>
-        <translation>removed</translation>
-    </message>
-    <message>
-        <location line="+160"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 ended the call.</translation>
     </message>
@@ -1119,7 +1168,7 @@ Example: https://server.my:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Hang up</translation>
     </message>
@@ -1129,17 +1178,17 @@ Example: https://server.my:8787</translation>
         <translation>Place a call</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Send a file</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Write a message…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation>Stickers</translation>
     </message>
@@ -1162,7 +1211,7 @@ Example: https://server.my:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Edit</translation>
     </message>
@@ -1182,19 +1231,19 @@ Example: https://server.my:8787</translation>
         <translation>Options</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation>&amp;Copy</translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation>Copy &amp;link location</translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation>Re&amp;act</translation>
     </message>
@@ -1229,7 +1278,7 @@ Example: https://server.my:8787</translation>
         <translation>&amp;Forward</translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation>&amp;Mark as read</translation>
     </message>
@@ -1282,7 +1331,7 @@ Example: https://server.my:8787</translation>
         <translation>Received Verification Request</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation>To allow other users to see  which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</translation>
     </message>
@@ -1312,7 +1361,7 @@ Example: https://server.my:8787</translation>
         <translation>Your device (%1) has requested to be verified.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Cancel</translation>
     </message>
@@ -1385,7 +1434,7 @@ Example: https://server.my:8787</translation>
         <translation>No microphone found.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Voice</translation>
     </message>
@@ -1400,7 +1449,7 @@ Example: https://server.my:8787</translation>
         <translation>Screen</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Cancel</translation>
     </message>
@@ -1416,7 +1465,7 @@ Example: https://server.my:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of Nheko.</translation>
     </message>
@@ -1434,7 +1483,7 @@ Example: https://server.my:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation>Read receipts</translation>
     </message>
@@ -1450,63 +1499,88 @@ Example: https://server.my:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Username</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation>Back</translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Password</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Please choose a secure password. The exact requirements for password strength may depend on your server.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Password confirmation</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Homeserver</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation>your.server</translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation>Your passwords do not match!</translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation>Device name</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>REGISTER</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Autodiscovery failed. Received malformed response.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation>Autodiscovery failed. Unknown error while requesting .well-known.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>The required endpoints were not found. Possibly not a Matrix server.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation>Received malformed response. Make sure the homeserver domain is valid.</translation>
     </message>
@@ -1516,25 +1590,35 @@ Example: https://server.my:8787</translation>
         <translation>An unknown error occured. Make sure the homeserver domain is valid.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Password is not long enough (min 8 chars)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation>Server does not support querying registration flows!</translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Passwords don&apos;t match</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation>Server does not support registration.</translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Invalid server name</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation>Invalid username.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation>Name already in use.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation>Part of the reserved namespace.</translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Close</translation>
     </message>
@@ -1547,17 +1631,17 @@ Example: https://server.my:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation>Explore Public Rooms</translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation>Search for public rooms</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation>Choose custom homeserver</translation>
     </message>
@@ -1565,7 +1649,7 @@ Example: https://server.my:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>no version stored</translation>
     </message>
@@ -1613,7 +1697,7 @@ Example: https://server.my:8787</translation>
         <translation>Create new tag…</translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation>Status Message</translation>
     </message>
@@ -1633,7 +1717,7 @@ Example: https://server.my:8787</translation>
         <translation>Set status message</translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation>Logout</translation>
     </message>
@@ -1661,7 +1745,7 @@ Example: https://server.my:8787</translation>
         <translation>Close</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation>Start a new chat</translation>
     </message>
@@ -1681,7 +1765,12 @@ Example: https://server.my:8787</translation>
         <translation>Room directory</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation>Search rooms (Ctrl+K)</translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation>User settings</translation>
     </message>
@@ -1694,7 +1783,7 @@ Example: https://server.my:8787</translation>
         <translation>Members of %1</translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation>
@@ -1731,12 +1820,12 @@ Example: https://server.my:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation>Room Settings</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation>
             <numerusform>%n member</numerusform>
@@ -1829,6 +1918,21 @@ Example: https://server.my:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation>Change what packs are enabled, remove packs or create new ones</translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation>Hidden events</translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation>Configure</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation>Select events to hide in this room</translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1879,7 +1983,7 @@ Example: https://server.my:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation>Pending invite.</translation>
     </message>
@@ -1889,7 +1993,7 @@ Example: https://server.my:8787</translation>
         <translation>Previewing this room</translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation>No preview available</translation>
     </message>
@@ -1897,7 +2001,7 @@ Example: https://server.my:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation>Please enter your login password to continue:</translation>
     </message>
@@ -1979,7 +2083,7 @@ Example: https://server.my:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation>Failed to connect to secret storage</translation>
     </message>
@@ -2139,12 +2243,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation>Successful Verification</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Verification successful!  Both sides verified their devices!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Close</translation>
     </message>
@@ -2152,7 +2256,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Message redaction failed: %1</translation>
@@ -2270,12 +2374,27 @@ Reason: %4</source>
 Reason: %4</translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 was invited.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation>%2 revoked the invite to %1.</translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation>%2 kicked %1.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation>%2 unbanned %1.</translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation>%2 rejected the knock from %1.</translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 changed their avatar.</translation>
     </message>
@@ -2300,32 +2419,12 @@ Reason: %4</translation>
         <translation>%1 rejected their invite.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Revoked the invite to %1.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 left the room.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>Kicked %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>Unbanned %1.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 was banned.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation>Reason: %1</translation>
     </message>
@@ -2335,12 +2434,17 @@ Reason: %4</translation>
         <translation>%1 redacted their knock.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>You joined this room.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation>%1 invited %2.</translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation>%1 has changed their avatar and changed their display name to %2.</translation>
     </message>
@@ -2350,18 +2454,18 @@ Reason: %4</translation>
         <translation>%1 has changed their display name to %2.</translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Rejected the knock from %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 left after having already left!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation>%1 banned %2</translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 knocked.</translation>
     </message>
@@ -2369,7 +2473,7 @@ Reason: %4</translation>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Edited</translation>
     </message>
@@ -2415,17 +2519,17 @@ Reason: %4</translation>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Back to room list</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>No room selected</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation>This room is not encrypted!</translation>
     </message>
@@ -2483,7 +2587,7 @@ Reason: %4</translation>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Show</translation>
     </message>
@@ -2496,7 +2600,7 @@ Reason: %4</translation>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation>No available registration flows!</translation>
     </message>
@@ -2521,7 +2625,7 @@ Reason: %4</translation>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Global User Profile</translation>
     </message>
@@ -2531,7 +2635,7 @@ Reason: %4</translation>
         <translation>Room User Profile</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation>Change avatar globally.</translation>
     </message>
@@ -2541,7 +2645,7 @@ Reason: %4</translation>
         <translation>Change avatar. Will only apply to this room.</translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation>Change display name globally.</translation>
     </message>
@@ -2561,7 +2665,7 @@ Reason: %4</translation>
         <translation>This is a room-specific profile. The user&apos;s name and avatar may be different from their global versions.</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation>Open the global profile for this user.</translation>
     </message>
@@ -2645,102 +2749,118 @@ Reason: %4</translation>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>Default</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation>Theme</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation>Scale factor</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation>Highlight message on hover</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation>Large Emoji in timeline</translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
         <source>Minimize to tray</source>
         <translation>Minimize to tray</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
         <translation>Start in tray</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
         <translation>Group&apos;s sidebar</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Circular Avatars</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation>Send messages as Markdown</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>profile: %1</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation>Enable message bubbles</translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>Default</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation>Enable small Avatars</translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>CALLS</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation>Play animated images only on hover</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation>Cross Signing Keys</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation>Typing notifications</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>REQUEST</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation>Sort rooms by unreads</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>DOWNLOAD</translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation>Show buttons in timeline</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Keep the application running in the background after closing the client window.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation>Limit width of timeline</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Start the application in the background without showing the client window.</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation>Read receipts</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation>Desktop notifications</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation>Use identicons</translation>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation>Alert on notification</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Show a column containing groups and tags next to the room list.</translation>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation>Circular Avatars</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Decrypt messages in sidebar</translation>
+        <location line="+2"/>
+        <source>Use identicons</source>
+        <translation>Use identicons</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation>Decrypt messages in sidebar</translation>
     </message>
     <message>
         <location line="+2"/>
@@ -2749,311 +2869,320 @@ Only affects messages in encrypted chats.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation>When the window loses focus, the timeline will
-be blurred.</translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation>Privacy screen timeout (in seconds [0 - 3600])</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</translation>
+        <source>Touchscreen mode</source>
+        <translation>Touchscreen mode</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Show buttons in timeline</translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation>Font size</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Show buttons to quickly reply, react or access additional options next to each message.</translation>
+        <source>Font Family</source>
+        <translation>Font Family</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Limit width of timeline</translation>
+        <source>Emoji Font Family</source>
+        <translation>Emoji Font Family</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised.</translation>
+        <source>Ringtone</source>
+        <translation>Ringtone</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Typing notifications</translation>
+        <source>Microphone</source>
+        <translation>Microphone</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</translation>
+        <source>Camera</source>
+        <translation>Camera</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Sort rooms by unreads</translation>
+        <location line="+2"/>
+        <source>Camera resolution</source>
+        <translation>Camera resolution</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</translation>
+        <source>Camera frame rate</source>
+        <translation>Camera frame rate</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Read receipts</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation>Allow fallback call assist server</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Show if your message was read.
-Status is displayed next to timestamps.</translation>
+        <source>Send encrypted messages to verified users only</source>
+        <translation>Send encrypted messages to verified users only</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Send messages as Markdown</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation>Share keys with verified users and devices</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</translation>
+        <source>Online Key Backup</source>
+        <translation>Online Key Backup</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
-        <translation>Play animated images only on hover</translation>
+        <source>Profile</source>
+        <translation>Profile</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Desktop notifications</translation>
+        <location line="+2"/>
+        <source>User ID</source>
+        <translation>User ID</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Notify about received message when the client is not currently focused.</translation>
+        <source>Accesstoken</source>
+        <translation>Accesstoken</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Alert on notification</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation>Device ID</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</translation>
+        <source>Device Fingerprint</source>
+        <translation>Device Fingerprint</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Highlight message on hover</translation>
+        <source>Homeserver</source>
+        <translation>Homeserver</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Change the background color of messages when you hover over them.</translation>
+        <source>Version</source>
+        <translation>Version</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Large Emoji in timeline</translation>
+        <location line="+2"/>
+        <source>Platform</source>
+        <translation>Platform</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Make font size larger if messages with only a few emojis are displayed.</translation>
+        <source>GENERAL</source>
+        <translation>GENERAL</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
-        <translation>Send encrypted messages to verified users only</translation>
+        <location line="+2"/>
+        <source>TIMELINE</source>
+        <translation>TIMELINE</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
-        <translation>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</translation>
+        <source>SIDEBAR</source>
+        <translation>SIDEBAR</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Share keys with verified users and devices</translation>
+        <source>TRAY</source>
+        <translation>TRAY</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</translation>
+        <source>NOTIFICATIONS</source>
+        <translation>NOTIFICATIONS</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation>Online Key Backup</translation>
+        <source>CALLS</source>
+        <translation>CALLS</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
-        <translation>Download message encryption keys from and upload to the encrypted online key backup.</translation>
+        <source>ENCRYPTION</source>
+        <translation>ENCRYPTION</translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
-        <translation>Enable online key backup</translation>
+        <location line="+2"/>
+        <source>INFO</source>
+        <translation>INFO</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation>Session Keys</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>CACHED</translation>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
+        <translation>Cross Signing Secrets</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>NOT CACHED</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation>Online backup key</translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Scale factor</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation>Self signing key</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Change the scale factor of the whole user interface.</translation>
+        <source>User signing key</source>
+        <translation>User signing key</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Font size</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation>Master signing key</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Font Family</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation>Default</translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Theme</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation>Set the notification sound to play when a call invite arrives</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Ringtone</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Set the notification sound to play when a call invite arrives</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Microphone</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation>Change the background color of messages when you hover over them.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Camera</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation>Make font size larger if messages with only a few emojis are displayed.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Camera resolution</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation>Keep the application running in the background after closing the client window.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Camera frame rate</translation>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation>Start the application in the background without showing the client window.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Allow fallback call assist server</translation>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation>Show a column containing groups and tags next to the room list.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>Will use turn.matrix.org as assist when your home server does not offer one.</translation>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>Device ID</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation>Messages get a bubble background. This also triggers some layout changes (WIP).</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Device Fingerprint</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation>Avatars are resized to fit above the message.</translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Session Keys</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation>Plays media like GIFs or WEBPs only when explicitly hovering over them.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPORT</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>EXPORT</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation>Show buttons to quickly reply, react or access additional options next to each message.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>ENCRYPTION</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation>Show if your message was read.
+Status is displayed next to timestamps.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>GENERAL</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation>Notify about received message when the client is not currently focused.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>INTERFACE</translation>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation>Display an identicon instead of a letter when no avatar is set.</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation>Plays media like GIFs or WEBPs only when explicitly hovering over them.</translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Touchscreen mode</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation>When the window loses focus, the timeline will
+be blurred.</translation>
     </message>
     <message>
         <location line="+2"/>
@@ -3061,52 +3190,52 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation>Will prevent text selection in the timeline to make touch scrolling easier.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Emoji Font Family</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation>Change the scale factor of the whole user interface.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Master signing key</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation>Will use turn.matrix.org as assist when your home server does not offer one.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>User signing key</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>The key to verify other users. If it is cached, verifying a user will verify all their devices.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation>Download message encryption keys from and upload to the encrypted online key backup.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation>Self signing key</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Backup key</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation>The key to verify other users. If it is cached, verifying a user will verify all their devices.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
         <translation>Select a file</translation>
     </message>
@@ -3116,7 +3245,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation>All Files (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
         <translation>Open Sessions File</translation>
     </message>
@@ -3124,26 +3253,26 @@ This usually causes the application icon in the task bar to animate in some fash
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
         <translation>Error</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
         <translation>File Password</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
         <translation>Enter the passphrase to decrypt the file:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
         <translation>The password cannot be empty</translation>
     </message>
@@ -3158,10 +3287,48 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation>File to save the exported session keys</translation>
     </message>
 </context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>REQUEST</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>DOWNLOAD</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>CACHED</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>NOT CACHED</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation>Back</translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPORT</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>EXPORT</translation>
+    </message>
+</context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</translation>
     </message>
@@ -3174,7 +3341,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation>Waiting for other party…</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Waiting for other side to accept the verification request.</translation>
     </message>
@@ -3189,7 +3356,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation>Waiting for other side to complete the verification process.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Cancel</translation>
     </message>
@@ -3197,22 +3364,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Welcome to Nheko! The desktop client for the Matrix protocol.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Enjoy your stay!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>REGISTER</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>LOGIN</translation>
     </message>
@@ -3220,7 +3387,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Yesterday</translation>
     </message>
diff --git a/resources/langs/nheko_eo.ts b/resources/langs/nheko_eo.ts
index 29cede551..99a5a5ea5 100644
--- a/resources/langs/nheko_eo.ts
+++ b/resources/langs/nheko_eo.ts
@@ -35,28 +35,10 @@
         <translation>Silentigi mikrofonon</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Atendante konfirmon</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Atendante kontrolon venontan de la alia flanko.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Nuligi</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Vidvoko</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>Aparatoj</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Akcepti</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Nekonata mikrofono: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Nekonata filmilo: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Rifuzi</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Neniu mikrofono troviĝis.</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Malsukcesis inviti uzanton: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Invitita uzanto: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Malsukcesis migrado de kaŝmemoro al nuna versio. Tio povas havi diversajn kialojn. Bonvolu raporti eraron kaj dume provi malpli novan version. Alternative, vi povas provi forigi la kaŝmemoron permane.</translation>
     </message>
@@ -195,7 +177,7 @@
         <translation>Ĉu vi certe volas inviti uzanton %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Malsukcesis inviti uzanton %1 al %2: %3</translation>
     </message>
@@ -255,7 +237,7 @@
         <translation>Malforbaris uzanton: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Ĉu vi certe volas komenci privatan babilon kun %1?</translation>
     </message>
@@ -318,10 +300,15 @@
         <translation>Malsukcesis eliri el ĉambro: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Malsukcesis forpeli uzanton %1 de %2: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -397,7 +384,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Malĉifri sekretojn</translation>
     </message>
@@ -430,12 +417,12 @@
         <translation>Kontrolkodo</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Bonvolu kontroli la sekvantajn ciferojn.  Vi devus vidi la samajn numerojn ambaŭflanke.  Se ili malsamas, bonvolu premi «Ili ne akordas!» por nuligi la kontrolon!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Ili ne akordas!</translation>
     </message>
@@ -448,7 +435,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Apliki</translation>
     </message>
@@ -476,7 +463,7 @@
         <translation>Serĉu</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Homoj</translation>
     </message>
@@ -524,12 +511,12 @@
         <translation>Kontrolkodo</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Bonvolu kontroli per la jenaj bildosignoj. Vi devus vidi la samajn bildosignojn ambaŭflanke. Se ili malsamas, bonvolu premi «Ili ne akordas!» por nuligi la kontrolon!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>Ili ne akordas!</translation>
     </message>
@@ -542,7 +529,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation>Estas neniu ŝloslio por malŝlosi ĉi tiun mesaĝon. Ni petis ĝin memage, sed vi povas provi repeti ĝin, se vi rapidas.</translation>
     </message>
@@ -613,7 +600,7 @@
         <translation>Malsukcesis kontrolo</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>Alia kliento ne subtenas nian kontrolan protokolon.</translation>
     </message>
@@ -643,7 +630,7 @@
         <translation>Nekonata eraro de kontrolo.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Fermi</translation>
     </message>
@@ -651,15 +638,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Plusendi mesaĝon</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished">Glumarkoj</translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation>Redaktado de bildopako</translation>
     </message>
@@ -699,34 +743,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation>Identigilo (stata ŝlosilo)</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation>Nomo de pako</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation>Atribuo</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation>Uzi kiel bildosignon</translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation>Uzi kiel glumarkon</translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation>Mallongigo</translation>
     </message>
@@ -736,7 +780,7 @@
         <translation>Korpo</translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation>Forigi de pako</translation>
     </message>
@@ -769,7 +813,7 @@
         <translation>Krei kontan pakon</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation>Nova ĉambra pako</translation>
     </message>
@@ -804,7 +848,7 @@
         <translation>Redakti</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation>Fermi</translation>
     </message>
@@ -822,7 +866,7 @@
         <translation>Ĉiuj dosieroj (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Malsukcesis alŝuti vidaŭdaĵojn. Bonvolu reprovi.</translation>
     </message>
@@ -835,7 +879,7 @@
         <translation>Invitu uzantojn al %1</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation>Identigilo de invitota uzanto</translation>
     </message>
@@ -869,7 +913,7 @@
         <translation>Aliĝi al ĉambro</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation>Identigilo aŭ kromnomo de ĉambro</translation>
     </message>
@@ -890,17 +934,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Identigilo de Matrikso</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>ekz. @tacuo:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -921,7 +965,7 @@ Se Nheko malsukcesas trovi vian hejmservilon, ĝi montros kampon por ĝia perman
         <translation>Via pasvorto.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Aparata nomo</translation>
     </message>
@@ -932,7 +976,7 @@ Se Nheko malsukcesas trovi vian hejmservilon, ĝi montros kampon por ĝia perman
         <translation>Nomo por ĉi tiu aparato, montrota al aliuloj, kiam oni kontrolos viajn aparatojn. Se vi neniun donos, uziĝos nomo implicita.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Adreso de hejmservilo</translation>
     </message>
@@ -942,7 +986,7 @@ Se Nheko malsukcesas trovi vian hejmservilon, ĝi montros kampon por ĝia perman
         <translation>servilo.mia:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translatorcomment>API should be valid for the EO translation of application programming interface.</translatorcomment>
@@ -950,21 +994,26 @@ Example: https://server.my:8787</source>
 Ekzemplo: https://servilo.mia:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translatorcomment>Maybe shouldn&apos;t be imperative?</translatorcomment>
         <translation>SALUTI</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Vi enigis nevalidan identigilon de Matrikso  ekz. @tacuo:matrix.org</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Malsukcesis memaga trovado. Ricevis misformitan respondon.</translation>
     </message>
@@ -974,7 +1023,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Malsukcesis memaga trovado. Okazis nekonata eraro dum petado. .well-known.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>La bezonataj konektaj lokoj ne troviĝis. Eble tio ne estas Matriksa servilo.</translation>
     </message>
@@ -989,17 +1038,17 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Okazis nekonata eraro. Certiĝu, ke retnomo de la hejmservilo estas valida.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>UNUNURA SALUTO</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Malplena pasvorto</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>Malsukcesis ununura saluto</translation>
     </message>
@@ -1025,67 +1074,67 @@ Ekzemplo: https://servilo.mia:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
-        <translation>forigita</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
-        <translation>Ĉifrado estas ŝaltita</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>Nomo da ĉambro ŝanĝiĝis al: %1</translation>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>forigis nomon de ĉambro</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>temo ŝanĝiĝis al: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>forigis temon</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation>%1 ŝanĝis bildon de la ĉambro</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 kreis kaj agordis ĉambron: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 voĉvokis.</translation>
     </message>
@@ -1100,22 +1149,22 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>%1 vokis.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation>%1 respondis la vokon.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 finis la vokon.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
-        <translation>Traktante vokon…</translation>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation>Enlasi ĝin</translation>
     </message>
@@ -1123,7 +1172,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Fini</translation>
     </message>
@@ -1133,17 +1182,17 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Voki</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Sendi dosieron</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Skribu mesaĝon…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation>Glumarkoj</translation>
     </message>
@@ -1166,7 +1215,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Redakti</translation>
     </message>
@@ -1186,19 +1235,19 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Elektebloj</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation>&amp;Kopii</translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation>Kopii celon de &amp;ligilo</translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation>Re&amp;agi</translation>
     </message>
@@ -1233,7 +1282,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>&amp;Plusendi</translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation>&amp;Marki legita</translation>
     </message>
@@ -1286,7 +1335,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Ricevita kontrolpeto</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation>Por lasi aliajn uzantojn vidi, kiuj el viaj aparatoj vere apartenas al vi, vi povas kontroli ilin. Tio ankaŭ permesas, ke savkopiado de ŝlosiloj funkciu memage. Ĉu vi volas kontroli nekontrolitan aparaton nun? (Bonvolu certigi, ke unu el tiaj aparatoj disponeblas al vi.)</translation>
     </message>
@@ -1316,7 +1365,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Via aparato (%1) petis kontrolon.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Nuligi</translation>
     </message>
@@ -1389,7 +1438,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Neniu mikrofono troviĝis.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Voĉe</translation>
     </message>
@@ -1404,7 +1453,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Ekrane</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Nuligi</translation>
     </message>
@@ -1420,7 +1469,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Krei unikan profilon, kiu permesos al vi saluti kelkajn kontojn samtempe, kaj startigi plurajn Nhekojn.</translation>
     </message>
@@ -1438,7 +1487,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation>Kvitancoj</translation>
     </message>
@@ -1454,63 +1503,88 @@ Ekzemplo: https://servilo.mia:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Uzantonomo</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>La uzantonomo devas ne esti malplena, kaj devas enhavi nur la signojn a–z, 0–9, ., _, =, -, kaj /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Pasvorto</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Bonvolu elekti sekuran pasvorton. Precizaj postuloj por ĝia fortikeco povus dependi de via servilo.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Pasvorta konfirmo</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Hejmservilo</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Servilo, kiu permesas registriĝon. Ĉar Matrikso estas federa, vi bezonas unue trovi servilon, kie vi povus registriĝi, aŭ gastigi vian propran.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Aparata nomo</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished">Nomo por ĉi tiu aparato, montrota al aliuloj, kiam oni kontrolos viajn aparatojn. Se vi neniun donos, uziĝos nomo implicita.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>REGISTRIÄœI</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Malsukcesis memaga trovado. Ricevis misformitan respondon.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation>Malsukcesis memaga trovado. Okazis nekonata eraro dum petado. .well-known.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>La bezonataj konektaj lokoj ne troviĝis. Eble tio ne estas Matriksa servilo.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation>Ricevis misformitan respondon. Certiĝu, ke retnomo de la hejmservilo estas valida.</translation>
     </message>
@@ -1520,25 +1594,35 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Okazis nekonata eraro. Certiĝu, ke retnomo de la hejmservilo estas valida.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Pasvorto nesufiĉe longas (almenaŭ 8 signoj)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Pasvortoj ne akordas</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Nevalida nomo de servilo</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Fermi</translation>
     </message>
@@ -1551,17 +1635,17 @@ Ekzemplo: https://servilo.mia:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation>Esplori publikajn ĉambrojn</translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation>Serĉi publikajn ĉambrojn</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation>Elekti propran hejmservilon</translation>
     </message>
@@ -1569,7 +1653,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>neniu versio konservita</translation>
     </message>
@@ -1617,7 +1701,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Krei novan etikedon…</translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation>Statmesaĝo</translation>
     </message>
@@ -1637,7 +1721,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Meti statmesaĝon</translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation>AdiaÅ­i</translation>
     </message>
@@ -1665,7 +1749,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Fermi</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation>Komenci novan babilon</translation>
     </message>
@@ -1685,7 +1769,12 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Katalogo de ĉambroj</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation>Agordoj de uzanto</translation>
     </message>
@@ -1698,7 +1787,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Anoj de %1</translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation>
@@ -1735,12 +1824,12 @@ Ekzemplo: https://servilo.mia:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation>Agordoj de ĉambro</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1833,6 +1922,21 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation>Åœalti, forigi, aÅ­ krei novajn pakojn</translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1883,7 +1987,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation>Atendanta invito.</translation>
     </message>
@@ -1893,7 +1997,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
         <translation>Antaŭrigardante ĉi tiun ĉambron</translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation>Neniu antaÅ­rigardo disponeblas</translation>
     </message>
@@ -1901,7 +2005,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation>Bonvolu enigi vian pasvorton por daÅ­rigi:</translation>
     </message>
@@ -1983,7 +2087,7 @@ Ekzemplo: https://servilo.mia:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation>Malsukcesis konektiĝi al sekreta deponejo</translation>
     </message>
@@ -2144,12 +2248,12 @@ Se vi elektos kontrolon, vi devos havi alian aparaton disponeblan. Se vi elektos
         <translation>Sukcesis kontrolo</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Sukcesis kontrolo! AmbaÅ­ flankoj kontrolis siajn aparatojn!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Fermi</translation>
     </message>
@@ -2157,7 +2261,7 @@ Se vi elektos kontrolon, vi devos havi alian aparaton disponeblan. Se vi elektos
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Malsukcesis redaktado de mesaĝo: %1</translation>
@@ -2275,13 +2379,27 @@ Reason: %4</source>
 Kialo: %4</translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translatorcomment>%1 estis invitata.</translatorcomment>
-        <translation>%1 estis invitita.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translatorcomment>%1 ŝanĝis sian avataron.</translatorcomment>
         <translation>%1 ŝanĝis sian profilbildon.</translation>
@@ -2307,32 +2425,12 @@ Kialo: %4</translation>
         <translation>%1 rifuzis sian inviton.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Nuligis la inviton por %1.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 eliris el la ĉambro.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>Forpelis uzanton %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>Malforbaris uzanton %1.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 estas forbarita.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation>Kialo: %1</translation>
     </message>
@@ -2342,12 +2440,17 @@ Kialo: %4</translation>
         <translation>%1 forigis sian frapon.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Vi aliĝis ĉi tiun ĉambron.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation>%1 ŝanĝis sian profilbildon kaj sian prezentan nomon al %2.</translation>
     </message>
@@ -2357,18 +2460,18 @@ Kialo: %4</translation>
         <translation>%1 ŝanĝis sian prezentan nomon al %2.</translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Rifuzis la frapon de %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 eliris jam elirinte!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 frapis.</translation>
     </message>
@@ -2376,7 +2479,7 @@ Kialo: %4</translation>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Redaktita</translation>
     </message>
@@ -2422,17 +2525,17 @@ Kialo: %4</translation>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Reen al listo de ĉambroj</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Neniu ĉambro estas elektita</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation>Ĉi tiu ĉambro ne estas ĉifrata!</translation>
     </message>
@@ -2490,7 +2593,7 @@ Kialo: %4</translation>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Montri</translation>
     </message>
@@ -2503,7 +2606,7 @@ Kialo: %4</translation>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation>Neniuj disponeblaj manieroj de registriĝo!</translation>
     </message>
@@ -2528,7 +2631,7 @@ Kialo: %4</translation>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Ĉiea profilo de uzanto</translation>
     </message>
@@ -2538,7 +2641,7 @@ Kialo: %4</translation>
         <translation>Ĉambra profilo de uzanto</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation>Ŝanĝi bildon ĉie.</translation>
     </message>
@@ -2548,7 +2651,7 @@ Kialo: %4</translation>
         <translation>Ŝanĝi bildon. Efektiviĝos nur en ĉi tiu ĉambro.</translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation>Ŝanĝi prezentan nomon ĉie.</translation>
     </message>
@@ -2568,7 +2671,7 @@ Kialo: %4</translation>
         <translation>Ĉi tio estas profilo speciala por ĉambro. La nomo kaj profilbildo de la uzanto povas esti malsamaj de siaj ĉieaj versioj.</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation>Malfermi la ĉiean profilon de ĉi tiu uzanto.</translation>
     </message>
@@ -2652,530 +2755,593 @@ Kialo: %4</translation>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>Implicita</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">HaÅ­to</translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Skala obligo</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Emfazi mesaĝojn sub musmontrilo</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Grandaj bildosignoj en historio</translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>Etigi al plato</translation>
+        <translation type="unfinished">Etigi al plato</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>Komenci ete sur pleto</translation>
+        <translation type="unfinished">Komenci ete sur pleto</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>Flanka breto de grupoj</translation>
+        <translation type="unfinished">Flanka breto de grupoj</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Rondaj profilbildoj</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Sendi mesaĝojn Markdaŭne</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>profilo: %1</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>Implicita</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>VOKOJ</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation type="unfinished">Ludi movbildojn nur sub musmontrilo</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation>Åœlosiloj por delegaj subskriboj</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Sciigoj pri tajpado</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>PETI</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Ordigi ĉambrojn laŭ nelegiteco</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>ELÅœUTI</translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Montri butonojn en historio</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Daŭrigi la aplikaĵon fone post fermo de la klienta fenestro.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation type="unfinished">Limigi larĝecon de historio</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Ekigi la aplikaĵon fone sen montro de la klienta fenestro.</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Kvitancoj</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Ŝanĝas la aspekton de profilbildoj de uzantoj en babilujo.
-NE – kvadrataj, JES – rondaj.</translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Labortablaj sciigoj</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation>Uzi identigajn bildojn</translation>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Atentigi pri sciigoj</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Montras kolumnon kun grupoj kaj etikedoj apud la listo de ĉambroj.</translation>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Rondaj profilbildoj</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Malĉifri mesaĝojn en flanka breto</translation>
+        <location line="+2"/>
+        <source>Use identicons</source>
+        <translation type="unfinished">Uzi identigajn bildojn</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Malĉifras mesaĝojn montratajn en la flanka breto.
-Influas nur sur mesaĝoj en ĉifritaj babiloj.</translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation type="unfinished">Malĉifri mesaĝojn en flanka breto</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Privacy Screen</source>
-        <translation>Privateca ŝirmilo</translation>
+        <translation type="unfinished">Privateca ŝirmilo</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation>Kiam la fenestro ne estos fokusata, la historio
-malklariĝos.</translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
-        <translation>Atendo ĝis privateca ŝirmilo (0–3600 sekundoj)</translation>
+        <translation type="unfinished">Atendo ĝis privateca ŝirmilo (0–3600 sekundoj)</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation>Tempo de atendo (en sekundoj) ekde senfokusiĝo
-de la fenestro, post kiu la enhavo malklariĝos.
-Agordu al 0 por malklarigi enhavon tuj post senfokusiĝo.
-Maksimuma valoro estas 1 horo (3600 sekundoj)</translation>
+        <source>Touchscreen mode</source>
+        <translation type="unfinished">Tuŝekrana reĝimo</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Montri butonojn en historio</translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation type="unfinished">Tipara grando</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Montras butonojn apud ĉiu mesaĝo, por rapide respondi, reagi,
-aÅ­ meti aliajn elekteblojn.</translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Tipara familio</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Limigi larĝecon de historio</translation>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Bildosigna tiparo</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Agordas maksimuman larĝecon por mesaĝoj en la historio (en bilderoj).
-Tio povas helpi legeblecon sur larĝaj ekranoj, kiam la fenestro de Nheko grandas.</translation>
+        <source>Ringtone</source>
+        <translation type="unfinished">Sonoro</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Sciigoj pri tajpado</translation>
+        <source>Microphone</source>
+        <translation type="unfinished">Mikrofono</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Montri, kiu tajpas en ĉambro.
-Ĉi tio ankaŭ ŝaltos sciigadon pri via tajpado al aliaj.</translation>
+        <source>Camera</source>
+        <translation type="unfinished">Filmilo</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Ordigi ĉambrojn laŭ nelegiteco</translation>
+        <location line="+2"/>
+        <source>Camera resolution</source>
+        <translation type="unfinished">Distingumo de filmilo</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Montras ĉambrojn kun novaj mesaĝoj kiel la unuajn.
-Kun ĉi tio malŝaltita, la listo de ĉambroj ordiĝos nur laŭ
-tempo de la lasta mesaĝo en ĉambro.
-Kun ĉi tio ŝaltita, ĉambroj kun aktivaj sciigoj (eta cirklo
-kun nombro skribita ene) estos ordigitaj plej supre. Ĉambroj,
-kiujn vi silentigis, ankoraŭ estos ordigitaj laŭ tempo, ĉar vi
-probable ne pensas ilin same gravaj kiel la aliaj ĉambroj.</translation>
+        <source>Camera frame rate</source>
+        <translation type="unfinished">Filmerrapido de filmilo</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Kvitancoj</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished">Permesi repaŝan asistan servilon por vokoj</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Montras, ĉu via mesaĝo estis legita.
-Stato estas montrita apud tempindikoj.</translation>
+        <source>Send encrypted messages to verified users only</source>
+        <translation type="unfinished">Sendi ĉifritajn mesaĝojn nur al kontrolitaj uzantoj</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Sendi mesaĝojn Markdaŭne</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished">Havigi ŝlosilojn al kontrolitaj uzantoj kaj aparatoj</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Permesas uzon de Markdaŭno en mesaĝoj.
-Kun ĉi tio malŝaltita, ĉiuj mesaĝoj sendiĝas en plata teksto.</translation>
+        <source>Online Key Backup</source>
+        <translation type="unfinished">Enreta savkopiado de ŝlosiloj</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
-        <translation>Ludi movbildojn nur sub musmontrilo</translation>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Labortablaj sciigoj</translation>
+        <location line="+2"/>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Sciigi pri ricevitaj mesaĝoj kiam la kliento ne estas fokusata.</translation>
+        <source>Accesstoken</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Atentigi pri sciigoj</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">Identigilo de aparato</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Atentigas je ricevo de mesaĝo.
-Ĉi tio kutime movbildigas la simbolbildon sur la pleto iumaniere.</translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Fingrospuro de aparato</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Emfazi mesaĝojn sub musmontrilo</translation>
+        <source>Homeserver</source>
+        <translation type="unfinished">Hejmservilo</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Ŝanĝi fonkoloron de mesaĝoj sub musmontrilo.</translation>
+        <source>Version</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Grandaj bildosignoj en historio</translation>
+        <location line="+2"/>
+        <source>Platform</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Grandigi tiparon se montriĝas mesaĝoj kun nur kelkaj bildosignoj.</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">ÄœENERALAJ</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
-        <translation>Sendi ĉifritajn mesaĝojn nur al kontrolitaj uzantoj</translation>
+        <location line="+2"/>
+        <source>TIMELINE</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
-        <translation>Postulas, ke uzanto estu kontrolita, por ke ĝi povu ricevi mesaĝojn. Ĉi tio plibonigas sekurecon, sed iom maloportunigas tutvojan ĉifradon.</translation>
+        <source>SIDEBAR</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Havigi ŝlosilojn al kontrolitaj uzantoj kaj aparatoj</translation>
+        <source>TRAY</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation>Memage respondas al petoj de aliaj uzantoj je ŝlosiloj, se tiuj uzantoj estas kontrolitaj, eĉ se la aparato ne povus aliri tiujn ŝlosilojn alie.</translation>
+        <source>NOTIFICATIONS</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation>Enreta savkopiado de ŝlosiloj</translation>
+        <source>CALLS</source>
+        <translation type="unfinished">VOKOJ</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
-        <translation>Elŝutu ĉifrajn ŝlosilojn por mesaĝoj de la ĉifrita enreta deponejo de ŝlosiloj, aŭ alŝutu ilin tien.</translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">ĈIFRADO</translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
-        <translation>Ŝalti enretan savkopiadon de ŝlosiloj</translation>
+        <location line="+2"/>
+        <source>INFO</source>
+        <translation type="unfinished">INFORMOJ</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation>Aŭtoroj de Nheko rekomendas ne ŝalti enretan savkopiadon de ŝlosiloj, almenaŭ ĝis simetria enreta savkopiado estos disponebla. Ĉu vi tamen volas ĝin ŝalti?</translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation type="unfinished">Ŝlosiloj de salutaĵo</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>KAÅœMEMORITA</translation>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>NE KAÅœMEMORITA</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Skala obligo</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation type="unfinished">Mem-subskriba ŝlosilo</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Ŝanĝas skalan obligon de la tuta fasado.</translation>
+        <source>User signing key</source>
+        <translation type="unfinished">Uzanto-subskriba ŝlosilo</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Tipara grando</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation type="unfinished">Ĉefa subskriba ŝlosilo</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Tipara familio</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished">Implicita</translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>HaÅ­to</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation type="unfinished">Agordi sciigan sonon, kiu aŭdiĝos je invito al voko</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Sonoro</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished">Agordas maksimuman larĝecon por mesaĝoj en la historio (en bilderoj).
+Tio povas helpi legeblecon sur larĝaj ekranoj, kiam la fenestro de Nheko grandas.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Agordi sciigan sonon, kiu aŭdiĝos je invito al voko</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished">Tempo de atendo (en sekundoj) ekde senfokusiĝo
+de la fenestro, post kiu la enhavo malklariĝos.
+Agordu al 0 por malklarigi enhavon tuj post senfokusiĝo.
+Maksimuma valoro estas 1 horo (3600 sekundoj)</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Mikrofono</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Ŝanĝi fonkoloron de mesaĝoj sub musmontrilo.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Filmilo</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">Grandigi tiparon se montriĝas mesaĝoj kun nur kelkaj bildosignoj.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Distingumo de filmilo</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation type="unfinished">Daŭrigi la aplikaĵon fone post fermo de la klienta fenestro.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Filmerrapido de filmilo</translation>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation type="unfinished">Ekigi la aplikaĵon fone sen montro de la klienta fenestro.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Permesi repaŝan asistan servilon por vokoj</translation>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation type="unfinished">Montras kolumnon kun grupoj kaj etikedoj apud la listo de ĉambroj.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>Uzos la servilon turn.matrix.org kiel asistanton, kiam via hejma servilo ne disponigos propran.</translation>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">Permesas uzon de Markdaŭno en mesaĝoj.
+Kun ĉi tio malŝaltita, ĉiuj mesaĝoj sendiĝas en plata teksto.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>Identigilo de aparato</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Fingrospuro de aparato</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Ŝlosiloj de salutaĵo</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished">Ludas vidaŭdaĵojn kiel GIF-ojn aŭ WEBP-ojn nur sub musmontrilo.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished">Montri, kiu tajpas en ĉambro.
+Ĉi tio ankaŭ ŝaltos sciigadon pri via tajpado al aliaj.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>ENPORTI</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished">Montras ĉambrojn kun novaj mesaĝoj kiel la unuajn.
+Kun ĉi tio malŝaltita, la listo de ĉambroj ordiĝos nur laŭ
+tempo de la lasta mesaĝo en ĉambro.
+Kun ĉi tio ŝaltita, ĉambroj kun aktivaj sciigoj (eta cirklo
+kun nombro skribita ene) estos ordigitaj plej supre. Ĉambroj,
+kiujn vi silentigis, ankoraŭ estos ordigitaj laŭ tempo, ĉar vi
+probable ne pensas ilin same gravaj kiel la aliaj ĉambroj.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>ELPORTI</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished">Montras butonojn apud ĉiu mesaĝo, por rapide respondi, reagi,
+aÅ­ meti aliajn elekteblojn.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>ĈIFRADO</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Montras, ĉu via mesaĝo estis legita.
+Stato estas montrita apud tempindikoj.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>ÄœENERALAJ</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Sciigi pri ricevitaj mesaĝoj kiam la kliento ne estas fokusata.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Atentigas je ricevo de mesaĝo.
+Ĉi tio kutime movbildigas la simbolbildon sur la pleto iumaniere.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>FASADO</translation>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished">Ŝanĝas la aspekton de profilbildoj de uzantoj en babilujo.
+NE – kvadrataj, JES – rondaj.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
-        <translation>Montras identigan bildon anstataÅ­ litero, kiam ne disponeblas profilbildo.</translation>
+        <translation type="unfinished">Montras identigan bildon anstataÅ­ litero, kiam ne disponeblas profilbildo.</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation>Ludas vidaŭdaĵojn kiel GIF-ojn aŭ WEBP-ojn nur sub musmontrilo.</translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation type="unfinished">Malĉifras mesaĝojn montratajn en la flanka breto.
+Influas nur sur mesaĝoj en ĉifritaj babiloj.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Tuŝekrana reĝimo</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation type="unfinished">Kiam la fenestro ne estos fokusata, la historio
+malklariĝos.</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Will prevent text selection in the timeline to make touch scrolling easier.</source>
-        <translation>Malhelpos elkton de teksto en historio por faciligi rulumadon per tuŝoj.</translation>
+        <translation type="unfinished">Malhelpos elkton de teksto en historio por faciligi rulumadon per tuŝoj.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Bildosigna tiparo</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Ŝanĝas skalan obligon de la tuta fasado.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Ĉefa subskriba ŝlosilo</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation type="unfinished">Uzos la servilon turn.matrix.org kiel asistanton, kiam via hejma servilo ne disponigos propran.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>Via plej grava ŝlosilo. Vi ne bezonas kaŝmemori ĝin, ĉar de kaŝmemoro ĝi povus esti pli facile ŝtelebla, kaj vi bezonas ĝin nur por ŝanĝado de aliaj viaj subskribaj ŝlosiloj.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation type="unfinished">Postulas, ke uzanto estu kontrolita, por ke ĝi povu ricevi mesaĝojn. Ĉi tio plibonigas sekurecon, sed iom maloportunigas tutvojan ĉifradon.</translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>Uzanto-subskriba ŝlosilo</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation type="unfinished">Memage respondas al petoj de aliaj uzantoj je ŝlosiloj, se tiuj uzantoj estas kontrolitaj, eĉ se la aparato ne povus aliri tiujn ŝlosilojn alie.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>Ŝlosilo por kontrolado de aliaj uzantoj. Se ĝi estas kaŝmemorata, kontrolo de uzanto kontrolos ankaŭ ĉiujn ĝiajn aparatojn.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation type="unfinished">Elŝutu ĉifrajn ŝlosilojn por mesaĝoj de la ĉifrita enreta deponejo de ŝlosiloj, aŭ alŝutu ilin tien.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation>Mem-subskriba ŝlosilo</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation type="unfinished">La ŝlosilo por malĉifrado de enretaj savkopioj de ŝlosiloj. Se ĝi estas kaŝmemorata, vi povas ŝalti enretan savkopiadon de ŝlosiloj por deponi ŝlosilojn sekure ĉifritajn al la servilo.</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
-        <translation>La ŝlosilo por kontrolado de viaj propraj aparatoj. Se ĝi estas kaŝmemorata, kontrolo de unu el viaj aparatoj markos ĝin kontrolita por aliaj viaj aparatoj, kaj por uzantoj, kiuj vin kontrolis.</translation>
+        <translation type="unfinished">La ŝlosilo por kontrolado de viaj propraj aparatoj. Se ĝi estas kaŝmemorata, kontrolo de unu el viaj aparatoj markos ĝin kontrolita por aliaj viaj aparatoj, kaj por uzantoj, kiuj vin kontrolis.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Savkopia ŝlosilo</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation type="unfinished">Ŝlosilo por kontrolado de aliaj uzantoj. Se ĝi estas kaŝmemorata, kontrolo de uzanto kontrolos ankaŭ ĉiujn ĝiajn aparatojn.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation>La ŝlosilo por malĉifrado de enretaj savkopioj de ŝlosiloj. Se ĝi estas kaŝmemorata, vi povas ŝalti enretan savkopiadon de ŝlosiloj por deponi ŝlosilojn sekure ĉifritajn al la servilo.</translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation type="unfinished">Via plej grava ŝlosilo. Vi ne bezonas kaŝmemori ĝin, ĉar de kaŝmemoro ĝi povus esti pli facile ŝtelebla, kaj vi bezonas ĝin nur por ŝanĝado de aliaj viaj subskribaj ŝlosiloj.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
-        <translation>Elektu dosieron</translation>
+        <translation type="unfinished">Elektu dosieron</translation>
     </message>
     <message>
         <location line="+0"/>
         <source>All Files (*)</source>
-        <translation>Ĉiuj dosieroj (*)</translation>
+        <translation type="unfinished">Ĉiuj dosieroj (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Malfermi dosieron kun salutaĵoj</translation>
+        <translation type="unfinished">Malfermi dosieron kun salutaĵoj</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Eraro</translation>
+        <translation type="unfinished">Eraro</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Pasvorto de dosiero</translation>
+        <translation type="unfinished">Pasvorto de dosiero</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Enigu pasfrazon por malĉifri la dosieron:</translation>
+        <translation type="unfinished">Enigu pasfrazon por malĉifri la dosieron:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>La pasvorto ne povas esti malplena</translation>
+        <translation type="unfinished">La pasvorto ne povas esti malplena</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Enigu pasfrazon por ĉifri ŝlosilojn de via salutaĵo:</translation>
+        <translation type="unfinished">Enigu pasfrazon por ĉifri ŝlosilojn de via salutaĵo:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>Dosiero, kien konserviĝos la elportitaj ŝloslioj de salutaĵo</translation>
+        <translation type="unfinished">Dosiero, kien konserviĝos la elportitaj ŝloslioj de salutaĵo</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>PETI</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>ELÅœUTI</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>KAÅœMEMORITA</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>NE KAÅœMEMORITA</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>ENPORTI</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>ELPORTI</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation>Neniu ĉifrita privata babilo kun ĉi tiu uzanto troviĝis. Kreu ĉifritan privatan babilon kun ĉi tiu uzanto kaj reprovu.</translation>
     </message>
@@ -3188,7 +3354,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation>Atendante la aliulon…</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Atendante, ĝis la aliulo akceptos la kontrolpeton.</translation>
     </message>
@@ -3203,7 +3369,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation>Atendante, ĝis la aliulo finos la kontrolon.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Nuligi</translation>
     </message>
@@ -3211,23 +3377,23 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translatorcomment>Should &quot;Matrico&quot; be &quot;Matrica&quot;? (I don&apos;t think so)</translatorcomment>
         <translation>Bonvenu al Nheko! La labortabla kliento por la protokolo Matrikso.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Äœuu via resto!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>REGISTRU</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>SALUTI</translation>
     </message>
@@ -3235,7 +3401,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>HieraÅ­</translation>
     </message>
diff --git a/resources/langs/nheko_es.ts b/resources/langs/nheko_es.ts
index fb82c8e29..09338bf5a 100644
--- a/resources/langs/nheko_es.ts
+++ b/resources/langs/nheko_es.ts
@@ -4,7 +4,7 @@
 <context>
     <name>ActiveCallBar</name>
     <message>
-        <location filename="../qml/voip/ActiveCallBar.qml" line="+107"/>
+        <location filename="../qml/voip/ActiveCallBar.qml" line="+108"/>
         <source>Calling...</source>
         <translation>Llamando...</translation>
     </message>
@@ -35,28 +35,10 @@
         <translation>Silenciar micrófono</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+12"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Esperando confirmación</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Esperando a que la otra parte complete la verificación.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Cancelar</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2445"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation>
             <numerusform>%1 y %n otro</numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+72"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Videollamada</translation>
     </message>
@@ -91,7 +73,7 @@
 <context>
     <name>CallInviteBar</name>
     <message>
-        <location filename="../qml/voip/CallInviteBar.qml" line="+65"/>
+        <location filename="../qml/voip/CallInviteBar.qml" line="+66"/>
         <source>Video Call</source>
         <translation>Videollamada</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>Dispositivos</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Aceptar</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Micrófono desconocido: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Cámara desconocida: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Rechazar</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>No se encontró micrófono.</translation>
     </message>
@@ -134,7 +116,7 @@
 <context>
     <name>CallManager</name>
     <message>
-        <location filename="../../src/voip/CallManager.cpp" line="+518"/>
+        <location filename="../../src/voip/CallManager.cpp" line="+519"/>
         <source>Entire screen</source>
         <translation>Pantalla completa</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+126"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>No se pudo invitar al usuario: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Se invitó al usuario: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>La migración de cache a la versión actual ha fallado. Esto puede deberse a diferentes razones. Por favor, reporte el incidente y mientras tanto intente usar una versión anterior. También puede probar a borrar la cache manualmente.</translation>
     </message>
@@ -194,7 +176,7 @@
         <translation>¿Seguro que quieres invitar a %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>No se ha podido invitar a %1 a %2: %3</translation>
     </message>
@@ -254,7 +236,7 @@
         <translation>Usuario desbaneado: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>¿Seguro que quieres comenzar un chat privado con %1?</translation>
     </message>
@@ -317,15 +299,20 @@
         <translation>Error al salir de la sala: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Falló al expulsar a %1 de %2: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
     <message>
-        <location filename="../qml/CommunitiesList.qml" line="+45"/>
+        <location filename="../qml/CommunitiesList.qml" line="+46"/>
         <source>Hide rooms with this tag or from this space by default.</source>
         <translation>Esconder salas con esta etiqueta o de este espacio por defecto.</translation>
     </message>
@@ -343,7 +330,7 @@
 <context>
     <name>CommunitiesModel</name>
     <message>
-        <location filename="../../src/timeline/CommunitiesModel.cpp" line="+57"/>
+        <location filename="../../src/timeline/CommunitiesModel.cpp" line="+58"/>
         <source>All rooms</source>
         <translation>Todas las salas</translation>
     </message>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Desencriptar secretos</translation>
     </message>
@@ -424,17 +411,17 @@
 <context>
     <name>DigitVerification</name>
     <message>
-        <location filename="../qml/device-verification/DigitVerification.qml" line="+11"/>
+        <location filename="../qml/device-verification/DigitVerification.qml" line="+12"/>
         <source>Verification Code</source>
         <translation>Código de verificación</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Por favor verifica los siguientes digitos. Deberías ver los mismos números en ambos lados. Si son diferentes,por favor presiona &apos;No son iguales!&apos; para abortar la verificación!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>No son iguales!</translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+42"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Aplicar</translation>
     </message>
@@ -470,12 +457,12 @@
 <context>
     <name>EmojiPicker</name>
     <message>
-        <location filename="../qml/emoji/EmojiPicker.qml" line="+69"/>
+        <location filename="../qml/emoji/EmojiPicker.qml" line="+70"/>
         <source>Search</source>
         <translation>Buscar</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Personas</translation>
     </message>
@@ -518,17 +505,17 @@
 <context>
     <name>EmojiVerification</name>
     <message>
-        <location filename="../qml/device-verification/EmojiVerification.qml" line="+11"/>
+        <location filename="../qml/device-verification/EmojiVerification.qml" line="+12"/>
         <source>Verification Code</source>
         <translation>Código de verificación</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Por favor verifica el siguiente emoji. Deberías ver el mismo emoji en ambos lados. Si son diferentes, por favor presiona &apos;No son iguales!&apos; para abortar la verificación!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>No son iguales!</translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+44"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation>No hay clave para desbloquear este mensaje. Solicitamos la clave automáticamente, pero puedes intentar solicitandola de nuevo si eres impaciente.</translation>
     </message>
@@ -584,7 +571,7 @@
 <context>
     <name>EncryptionIndicator</name>
     <message>
-        <location filename="../qml/EncryptionIndicator.qml" line="+53"/>
+        <location filename="../qml/EncryptionIndicator.qml" line="+54"/>
         <source>This message is not encrypted!</source>
         <translation>Este mensaje no está encriptado!</translation>
     </message>
@@ -607,12 +594,12 @@
 <context>
     <name>Failed</name>
     <message>
-        <location filename="../qml/device-verification/Failed.qml" line="+11"/>
+        <location filename="../qml/device-verification/Failed.qml" line="+12"/>
         <source>Verification failed</source>
         <translation>Verificación fallida</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>El otro cliente no soporta nuestro protocolo de verificación.</translation>
     </message>
@@ -642,7 +629,7 @@
         <translation>Error de verificación desconocido.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Cerrar</translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+44"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Reenviar Mensaje</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished">Stickers</translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+24"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translatorcomment>Just in case, I&apos;ll be leaving pack as pack instead of using paquete (which is the valid translation) but since a lot of spanish speaking people just say pack, I think it&apos;s fine</translatorcomment>
         <translation>Editando pack de imágenes</translation>
@@ -699,35 +743,35 @@
         <translation>Seleccionar imagen previa para el pack</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translatorcomment>There isn&apos;t a reasonable translation for this and it will sound ridiculous if I translate it, so I&apos;ll just leave it as is</translatorcomment>
         <translation>State key</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation>Nombre del pack</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation>Atribución</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation>Usar como Emoji</translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation>Usar como Sticker</translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation>Alias</translation>
     </message>
@@ -737,7 +781,7 @@
         <translation>Cuerpo</translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation>Eliminar del pack</translation>
     </message>
@@ -760,7 +804,7 @@
 <context>
     <name>ImagePackSettingsDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackSettingsDialog.qml" line="+23"/>
+        <location filename="../qml/dialogs/ImagePackSettingsDialog.qml" line="+24"/>
         <source>Image pack settings</source>
         <translation>Ajustes del pack de imágenes</translation>
     </message>
@@ -770,7 +814,7 @@
         <translation>Crear pack global</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation>Nuevo pack para la sala</translation>
     </message>
@@ -805,7 +849,7 @@
         <translation>Editar</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation>Cerrar</translation>
     </message>
@@ -813,7 +857,7 @@
 <context>
     <name>InputBar</name>
     <message>
-        <location filename="../../src/timeline/InputBar.cpp" line="+269"/>
+        <location filename="../../src/timeline/InputBar.cpp" line="+270"/>
         <source>Select a file</source>
         <translation>Seleccionar un archivo</translation>
     </message>
@@ -823,7 +867,7 @@
         <translation>Todos los archivos (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>No se ha podido subir el archivo. Por favor, intenta de nuevo.</translation>
     </message>
@@ -831,12 +875,12 @@
 <context>
     <name>InviteDialog</name>
     <message>
-        <location filename="../qml/dialogs/InviteDialog.qml" line="+33"/>
+        <location filename="../qml/dialogs/InviteDialog.qml" line="+34"/>
         <source>Invite users to %1</source>
         <translation>Invitar usuarios a %1</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation>ID de usuario a invitar</translation>
     </message>
@@ -865,12 +909,12 @@
 <context>
     <name>JoinRoomDialog</name>
     <message>
-        <location filename="../qml/dialogs/JoinRoomDialog.qml" line="+14"/>
+        <location filename="../qml/dialogs/JoinRoomDialog.qml" line="+15"/>
         <source>Join room</source>
         <translation>Unirse a la sala</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation>ID de la sala o alias</translation>
     </message>
@@ -878,7 +922,7 @@
 <context>
     <name>LeaveRoomDialog</name>
     <message>
-        <location filename="../qml/dialogs/LeaveRoomDialog.qml" line="+15"/>
+        <location filename="../qml/dialogs/LeaveRoomDialog.qml" line="+16"/>
         <source>Leave room</source>
         <translation>Salir de la sala</translation>
     </message>
@@ -891,17 +935,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>ID de Matrix</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>ej @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -922,7 +966,7 @@ Si Nheko falla en descubrir tu servidor base, te mostrara una casilla para inser
         <translation>Tu contraseña.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Nombre de dispositivo</translation>
     </message>
@@ -932,7 +976,7 @@ Si Nheko falla en descubrir tu servidor base, te mostrara una casilla para inser
         <translation>Nombre para este dispositivo, el cual será mostrado a otros, cuando verifiques tus dispositivos. Si no se provee uno el nombre por defecto es utilizado.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Dirección del servidor base</translation>
     </message>
@@ -942,27 +986,32 @@ Si Nheko falla en descubrir tu servidor base, te mostrara una casilla para inser
         <translation>mi.servidor:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>La dirección que se puede usar para contactar la API de cliente de tu servidor base.
 Ejemplo: https://mi.servidor:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>INICIAR SESION</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Has insertado un ID de Matrix invalido  ej @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>El autodescubrimiento falló. Se ha recibido una respuesta malformada.</translation>
     </message>
@@ -972,7 +1021,7 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>El autodescubrimiento falló. Error desconocido al solicitar .well-known.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>No se han encontrado los puntos finales requeridos. Es posible que no sea un servidor de Matrix.</translation>
     </message>
@@ -987,17 +1036,17 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Un error desconocido ocurrió. Asegurate de que el dominio del servidor es válido.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>INICIO DE SESION SSO</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Contraseña vacia</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>El inicio de sesión SSO falló</translation>
     </message>
@@ -1005,7 +1054,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>LogoutDialog</name>
     <message>
-        <location filename="../qml/dialogs/LogoutDialog.qml" line="+13"/>
+        <location filename="../qml/dialogs/LogoutDialog.qml" line="+14"/>
         <source>Log out</source>
         <translation>Cerrar sesión</translation>
     </message>
@@ -1023,62 +1072,67 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+191"/>
-        <source>Encryption enabled</source>
-        <translation>Encriptación activada</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>Nombre de la sala cambió a: %1</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>eliminó el nombre de la sala</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>Tema cambió a: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>eliminó el tema</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation>%1 cambió el avatar de la sala</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation>%1 cambió los mensajes fijados.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation>%1 cambió los stickers y emotes en esta sala.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation>%1 cambió las direcciones para esta sala.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation>%1 cambió el espacio principal de esta sala.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 creó y configuró la sala: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 hizo una llamada de voz.</translation>
     </message>
@@ -1093,27 +1147,22 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>%1 hizo una llamada.</translation>
     </message>
     <message>
-        <location line="+38"/>
-        <source>Negotiating call...</source>
-        <translation>Negociando llamada...</translation>
+        <location line="+41"/>
+        <source>%1 is negotiating the call...</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation>Permitir que entren</translation>
     </message>
     <message>
-        <location line="-95"/>
+        <location line="-102"/>
         <source>%1 answered the call.</source>
         <translation>%1 atendió la llamada.</translation>
     </message>
     <message>
-        <location line="-148"/>
-        <source>removed</source>
-        <translation>eliminado</translation>
-    </message>
-    <message>
-        <location line="+160"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 terminó la llamada.</translation>
     </message>
@@ -1121,7 +1170,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+44"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Colgar</translation>
     </message>
@@ -1131,17 +1180,17 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Llamar</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Enviar archivo</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Escribe un mensaje...</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation>Stickers</translation>
     </message>
@@ -1164,7 +1213,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+109"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Editar</translation>
     </message>
@@ -1184,19 +1233,19 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Opciones</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation>&amp;Copiar</translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation>Copiar dirección de &amp;enlace</translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation>Re&amp;accionar</translation>
     </message>
@@ -1231,7 +1280,7 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>&amp;Reenviar</translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation>&amp;Marcar como leido</translation>
     </message>
@@ -1274,7 +1323,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>NewVerificationRequest</name>
     <message>
-        <location filename="../qml/device-verification/NewVerificationRequest.qml" line="+11"/>
+        <location filename="../qml/device-verification/NewVerificationRequest.qml" line="+12"/>
         <source>Send Verification Request</source>
         <translation>Enviar solicitud de verificación</translation>
     </message>
@@ -1284,7 +1333,7 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Solicitud de verificación recibida</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation>Para permitir que otros usuarios vean qué dispositivos son tuyos, puedes verificarlos. Esto también permite que tu copia de seguridad funcione de forma automática. Verificar un dispositivo sin verificar ahora? (Por favor asegurate que tengas uno de esos dispositivos disponibles.)</translation>
     </message>
@@ -1314,7 +1363,7 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Tu dispositivo (%1) ha solicitado ser verificado.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Cancelar</translation>
     </message>
@@ -1337,7 +1386,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>NotificationWarning</name>
     <message>
-        <location filename="../qml/NotificationWarning.qml" line="+32"/>
+        <location filename="../qml/NotificationWarning.qml" line="+33"/>
         <source>You are about to notify the whole room</source>
         <translation>Estás a punto de notificar a toda la sala</translation>
     </message>
@@ -1345,9 +1394,9 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>NotificationsManager</name>
     <message>
-        <location filename="../../src/notifications/Manager.cpp" line="+22"/>
-        <location filename="../../src/notifications/ManagerMac.cpp" line="+45"/>
-        <location filename="../../src/notifications/ManagerWin.cpp" line="+74"/>
+        <location filename="../../src/notifications/Manager.cpp" line="+23"/>
+        <location filename="../../src/notifications/ManagerMac.cpp" line="+46"/>
+        <location filename="../../src/notifications/ManagerWin.cpp" line="+75"/>
         <source>%1 sent an encrypted message</source>
         <translation>%1 envió un mensaje encriptado</translation>
     </message>
@@ -1377,7 +1426,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>PlaceCall</name>
     <message>
-        <location filename="../qml/voip/PlaceCall.qml" line="+48"/>
+        <location filename="../qml/voip/PlaceCall.qml" line="+49"/>
         <source>Place a call to %1?</source>
         <translation>Hacer una llamada a %1?</translation>
     </message>
@@ -1387,7 +1436,7 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>No se encontró micrófono.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Voz</translation>
     </message>
@@ -1402,7 +1451,7 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Pantalla</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Cancelar</translation>
     </message>
@@ -1410,7 +1459,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>Placeholder</name>
     <message>
-        <location filename="../qml/delegates/Placeholder.qml" line="+11"/>
+        <location filename="../qml/delegates/Placeholder.qml" line="+12"/>
         <source>unimplemented event: </source>
         <translation>evento-sin-implementar: </translation>
     </message>
@@ -1418,7 +1467,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+189"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Crear un perfil único, el cual te permite iniciar sesión en multiples cuentas a la vez y empezar multiples instancias de nheko.</translation>
     </message>
@@ -1444,7 +1493,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>ReadReceiptsModel</name>
     <message>
-        <location filename="../../src/ReadReceiptsModel.cpp" line="+110"/>
+        <location filename="../../src/ReadReceiptsModel.cpp" line="+111"/>
         <source>Yesterday, %1</source>
         <translation>Ayer, %1</translation>
     </message>
@@ -1452,63 +1501,88 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+81"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Nombre de usuario</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>El nombre de usuario no debe estar vacio, y sólo debe contener los carácteres a-z, 0-9, ., _, =, -, y /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Contraseña</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Por favor escoge una contraseña segura. Los requerimientos exactos para la seguridad de la contraseña pueden depender de tu servidor.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Confirmar contraseña</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Servidor base</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Un servidor que permite registrarse. Debido a que matrix es descentralizado primero debes encontrar un servidor en el que puedas registrarte o mantener el tuyo propio.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Nombre de dispositivo</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished">Nombre para este dispositivo, el cual será mostrado a otros, cuando verifiques tus dispositivos. Si no se provee uno el nombre por defecto es utilizado.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>REGISTRARSE</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>El autodescubrimiento falló. Se ha recibido una respuesta malformada.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation>El autodescubrimiento falló. Error desconocido al solicitar .well-known.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>No se han encontrado los puntos finales requeridos. Es posible que no sea un servidor de Matrix.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation>Recibió respuesta malformada. Asegurate de que el dominio del servidor base es valido.</translation>
     </message>
@@ -1518,25 +1592,35 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Un error desconocido ocurrió. Asegurate de que el dominio del servidor es válido.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>La contraseña no es lo suficientemente larga (8 carácteres mínimo)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Las contraseñas no son iguales</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Nombre de servidor inválido</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+63"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Cerrar</translation>
     </message>
@@ -1549,17 +1633,17 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+25"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation>Explorar salas públicas</translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation>Buscar salas públicas</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation>Seleccionar servidor base personalizado</translation>
     </message>
@@ -1567,7 +1651,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1922"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>ninguna version guardada</translation>
     </message>
@@ -1575,7 +1659,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>RoomList</name>
     <message>
-        <location filename="../qml/RoomList.qml" line="+67"/>
+        <location filename="../qml/RoomList.qml" line="+69"/>
         <source>New tag</source>
         <translation>Nueva etiqueta</translation>
     </message>
@@ -1615,7 +1699,7 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Crear nueva etiqueta...</translation>
     </message>
     <message>
-        <location line="+291"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation>Estado</translation>
     </message>
@@ -1635,7 +1719,7 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Establecer estado</translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation>Cerrar sesión</translation>
     </message>
@@ -1663,7 +1747,7 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Cerrar</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation>Comenzar un nuevo chat</translation>
     </message>
@@ -1683,7 +1767,12 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Listado de salas</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation>Ajustes de usuario</translation>
     </message>
@@ -1691,12 +1780,12 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>RoomMembers</name>
     <message>
-        <location filename="../qml/dialogs/RoomMembers.qml" line="+19"/>
+        <location filename="../qml/dialogs/RoomMembers.qml" line="+20"/>
         <source>Members of %1</source>
         <translation>Miembros de: %1</translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation>
@@ -1738,7 +1827,7 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Ajustes de la sala</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translatorcomment>&quot;miembro&quot; is for a single person, miembros is for many</translatorcomment>
         <translation>
@@ -1833,6 +1922,21 @@ Ejemplo: https://mi.servidor:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation>Cambiar que paquetes están activos, eliminar paquetes o crear nuevos</translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1883,7 +1987,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+150"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation>Invitación pendiente.</translation>
     </message>
@@ -1893,7 +1997,7 @@ Ejemplo: https://mi.servidor:8787</translation>
         <translation>Vista previa de esta sala</translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation>Vista previa no disponible</translation>
     </message>
@@ -1901,7 +2005,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+258"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation>Por favor inserta tu contraseña para iniciar sesión:</translation>
     </message>
@@ -1929,7 +2033,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>ScreenShare</name>
     <message>
-        <location filename="../qml/voip/ScreenShare.qml" line="+30"/>
+        <location filename="../qml/voip/ScreenShare.qml" line="+31"/>
         <source>Share desktop with %1?</source>
         <translation>¿Compartir pantalla con %1?</translation>
     </message>
@@ -1983,7 +2087,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4218"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation>Hubo en error al conectarse al almacenamiento secreto</translation>
     </message>
@@ -1996,7 +2100,7 @@ Ejemplo: https://mi.servidor:8787</translation>
 <context>
     <name>SelfVerificationCheck</name>
     <message>
-        <location filename="../qml/SelfVerificationCheck.qml" line="+39"/>
+        <location filename="../qml/SelfVerificationCheck.qml" line="+40"/>
         <source>This is your recovery key. You will need it to restore access to your encrypted messages and verification keys. Keep this safe. Don&apos;t share it with anyone and don&apos;t lose it! Do not pass go! Do not collect $200!</source>
         <translation>Esta es tu clave de seguridad. La necesitaras para restaurar acceso a tus mensajes encriptados y claves de verificación. Mantenla segura. No la compartas con nadie y no la pierdas! No la dejes ir! No aceptes $200 por ella!</translation>
     </message>
@@ -2048,7 +2152,7 @@ Si escoges verificar, necesitas tener otro dispositivo disponible. Si escoges &q
 <context>
     <name>SelfVerificationStatus</name>
     <message>
-        <location filename="../../src/encryption/SelfVerificationStatus.cpp" line="+42"/>
+        <location filename="../../src/encryption/SelfVerificationStatus.cpp" line="+43"/>
         <source>Failed to create keys for cross-signing!</source>
         <translation>Falló en la creación de claves para firma cruzada!</translation>
     </message>
@@ -2081,7 +2185,7 @@ Si escoges verificar, necesitas tener otro dispositivo disponible. Si escoges &q
 <context>
     <name>SingleImagePackModel</name>
     <message>
-        <location filename="../../src/SingleImagePackModel.cpp" line="+268"/>
+        <location filename="../../src/SingleImagePackModel.cpp" line="+269"/>
         <location line="+25"/>
         <source>Failed to update image pack: %1</source>
         <translation>Falló en la actualización del pack de imágenes: %1</translation>
@@ -2107,7 +2211,7 @@ Si escoges verificar, necesitas tener otro dispositivo disponible. Si escoges &q
 <context>
     <name>StatusIndicator</name>
     <message>
-        <location filename="../qml/StatusIndicator.qml" line="+24"/>
+        <location filename="../qml/StatusIndicator.qml" line="+25"/>
         <source>Failed</source>
         <translation>Falló</translation>
     </message>
@@ -2130,7 +2234,7 @@ Si escoges verificar, necesitas tener otro dispositivo disponible. Si escoges &q
 <context>
     <name>StickerPicker</name>
     <message>
-        <location filename="../qml/emoji/StickerPicker.qml" line="+70"/>
+        <location filename="../qml/emoji/StickerPicker.qml" line="+71"/>
         <source>Search</source>
         <translation>Buscar</translation>
     </message>
@@ -2138,17 +2242,17 @@ Si escoges verificar, necesitas tener otro dispositivo disponible. Si escoges &q
 <context>
     <name>Success</name>
     <message>
-        <location filename="../qml/device-verification/Success.qml" line="+11"/>
+        <location filename="../qml/device-verification/Success.qml" line="+12"/>
         <source>Successful Verification</source>
         <translation>Verificación Exitosa</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Verificación exitosa! Ambos lados verificaron sus dispositivos!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Cerrar</translation>
     </message>
@@ -2156,7 +2260,7 @@ Si escoges verificar, necesitas tener otro dispositivo disponible. Si escoges &q
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1218"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Falló en la eliminación del mensaje: %1</translation>
@@ -2274,12 +2378,32 @@ Reason: %4</source>
 Razón: %4</translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 fue invitado.</translation>
+        <location line="+82"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+41"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-41"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation>%1 cambió su avatar y su nombre a %2.</translation>
     </message>
@@ -2314,58 +2438,38 @@ Razón: %4</translation>
         <translation>%1 rechazó la invitación.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Se revocó la invitación a %1.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 abandonó la sala.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>%1 fue expulsado.</translation>
+        <location line="+26"/>
+        <source>Reason: %1</source>
+        <translation>Razón: %1</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>%1 fue desbaneado.</translation>
+        <location line="-19"/>
+        <source>%1 redacted their knock.</source>
+        <translation>%1 canceló después de tocar la puerta.</translation>
     </message>
     <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 fue baneado.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
-        <source>Reason: %1</source>
-        <translation>Razón: %1</translation>
-    </message>
-    <message>
-        <location line="-19"/>
-        <source>%1 redacted their knock.</source>
-        <translation>%1 canceló después de tocar la puerta.</translation>
-    </message>
-    <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Te has unido a esta sala.</translation>
     </message>
     <message>
-        <location line="+1064"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>La llamada a la puerta de %1 fue rechazada.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+1072"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 se fue después de ya haberse ido!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 tocó a la puerta.</translation>
     </message>
@@ -2373,7 +2477,7 @@ Razón: %4</translation>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+175"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Editado</translation>
     </message>
@@ -2381,7 +2485,7 @@ Razón: %4</translation>
 <context>
     <name>TimelineView</name>
     <message>
-        <location filename="../qml/TimelineView.qml" line="+29"/>
+        <location filename="../qml/TimelineView.qml" line="+30"/>
         <source>No room open</source>
         <translation>Ninguna sala abierta</translation>
     </message>
@@ -2419,17 +2523,17 @@ Razón: %4</translation>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+89"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Volver a la lista de salas</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Ninguna sala seleccionada</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation>Esta sala no está encriptada!</translation>
     </message>
@@ -2487,7 +2591,7 @@ Razón: %4</translation>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+115"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Mostrar</translation>
     </message>
@@ -2525,7 +2629,7 @@ Razón: %4</translation>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+28"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Perfil de Usuario Global</translation>
     </message>
@@ -2535,7 +2639,7 @@ Razón: %4</translation>
         <translation>Perfil de Usuario en esta Sala</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation>Cambiar el avatar globalmente.</translation>
     </message>
@@ -2545,7 +2649,7 @@ Razón: %4</translation>
         <translation>Cambiar el avatar. Sólo aplicara a esta sala.</translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation>Cambiar el nombre de usuario globalmente.</translation>
     </message>
@@ -2565,7 +2669,7 @@ Razón: %4</translation>
         <translation>Este es un perfil específico para esta sala. El nombre de usuario y avatar pueden ser diferentes de sus versiones globales.</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation>Abrir el perfil global para este usuario.</translation>
     </message>
@@ -2616,7 +2720,7 @@ Razón: %4</translation>
         <translation>Sin verificar</translation>
     </message>
     <message>
-        <location filename="../../src/ui/UserProfile.cpp" line="+152"/>
+        <location filename="../../src/ui/UserProfile.cpp" line="+153"/>
         <source>Sign out device %1</source>
         <translation>Cerrar sesión en el dispositivo %1</translation>
     </message>
@@ -2649,522 +2753,585 @@ Razón: %4</translation>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+420"/>
-        <location filename="../../src/UserSettingsPage.h" line="+211"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>Por defecto</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Tema</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Factor de escala</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Destacar los mensajes al pasar el mouse por encima</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Activar emojis grandes en el chat</translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>Minimizar la ventana a un icono en la barra de tareas cuando esta se cierre</translation>
+        <translation type="unfinished">Minimizar la ventana a un icono en la barra de tareas cuando esta se cierre</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>Abrir automáticamente después de iniciar sesión en el sistema</translation>
+        <translation type="unfinished">Abrir automáticamente después de iniciar sesión en el sistema</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>Barra lateral del grupo</translation>
+        <translation type="unfinished">Barra lateral del grupo</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Avatares circulares</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Enviar mensajes en Markdown</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>perfil: %1</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>Por defecto</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>LLAMADAS</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation type="unfinished">Regroducir automáticamente los GIFs sólo al pasar el mouse por encima</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation>Llaves de firma cruzada</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Indicador de escritura</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>SOLICITAR</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Organizar salas por mensajes no leidos</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>DESCARGAR</translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Mostrar botones en la línea de tiempo</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Mantener la aplicación en segundo plano después de cerrar la ventana del cliente.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation type="unfinished">Limitar la anchura de la línea de tiempo</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Ejecutar la aplicación en segundo plano sin mostrar la ventana del cliente.</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Vistos</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Cambiar la apariencia de los avatares de los usuarios en los chats.
-OFF   cuadrado, ON   Circulo.</translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Notificaciones de escritorio</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation>Usar identicons</translation>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Alertar cuando haya una notificación</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Mostrar una columna con los grupos y etiquetas junto a la lista de salas.</translation>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Avatares circulares</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Desencriptar mensajes en la barra lateral</translation>
+        <location line="+2"/>
+        <source>Use identicons</source>
+        <translation type="unfinished">Usar identicons</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Desencriptar mensajes mostrados en la barra lateral.
-Sólo afecta a los mensajes en chats encriptados.</translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation type="unfinished">Desencriptar mensajes en la barra lateral</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Privacy Screen</source>
-        <translation>Privacidad de pantalla</translation>
+        <translation type="unfinished">Privacidad de pantalla</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation>Cuando la ventana no este enfocada, la línea de tiempo se volverá borrosa.</translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
-        <translation>Tiempo de espera para privacidad de pantalla (en segundos [0   3600])</translation>
+        <translation type="unfinished">Tiempo de espera para privacidad de pantalla (en segundos [0   3600])</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation>Establecer el tiempo de espera (en segundos) para el tiempo después de que la ventana
-pierde el enfoque antes de que la pantalla se desenfoque.
-Si se ajusta a 0, la pantalla se desenfoca inmediatamente después de la pérdida de enfoque. Valor máximo de 1 hora (3600 segundos)</translation>
+        <source>Touchscreen mode</source>
+        <translation type="unfinished">Modo de pantalla táctil</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Mostrar botones en la línea de tiempo</translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation type="unfinished">Tamaño de la fuente</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Mostrar botones para responder rápidamente, reaccionar o acceder opciones adicionales junto a cada mensaje.</translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Nombre de la fuente</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Limitar la anchura de la línea de tiempo</translation>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Nombre de fuente para Emojis</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Selecciona la anchura máxima en la línea de tiempo (en píxeles) Esto puede ayudar con la legibilidad en pantallas amplias cuando Nheko este en pantalla completa</translation>
+        <source>Ringtone</source>
+        <translation type="unfinished">Tono</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Indicador de escritura</translation>
+        <source>Microphone</source>
+        <translation type="unfinished">Micrófono</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Mostrar quién está escribiendo en una sala.
-Esto también activa o desactiva enviar notificaciones cuando estes escribiendo.</translation>
+        <source>Camera</source>
+        <translation type="unfinished">Cámara</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Organizar salas por mensajes no leidos</translation>
+        <location line="+2"/>
+        <source>Camera resolution</source>
+        <translation type="unfinished">Resolución de la cámara</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Mostrar salas con mensajes nuevos primero
-Si esta opción está desactivada, la lista de salas será organizada por la fecha y hora de envío del último mensaje en la sala
-Si está activada, las salas con notificaciones activas (el pequeño círculo con un número) serán organizadas al principio. Las salas que hayas silenciado seguirán siendo organizadas por la fecha y hora del último mensaje enviado, ya que no pareces considerarlas igual de importantes que el resto de salas.</translation>
+        <source>Camera frame rate</source>
+        <translation type="unfinished">Tasa de fotogramas de la cámara</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Vistos</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished">Permitir el servidor de respaldo de asistencia</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Mostrar si tu mensaje fue leido.
-El estado es mostrado junto a la fecha y hora en la que se envió el mensaje.</translation>
+        <source>Send encrypted messages to verified users only</source>
+        <translation type="unfinished">Enviar mensajes encriptados sólo a usuarios verificados</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Enviar mensajes en Markdown</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished">Compartir claves con usuarios y dispositivos verificados</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Permitir usar markdown en los mensajes.
-Cuando está deshabilitado, todos los mensajes son enviados en texto sin formato.</translation>
+        <source>Online Key Backup</source>
+        <translation type="unfinished">Copia de seguridad en línea de claves</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
-        <translation>Regroducir automáticamente los GIFs sólo al pasar el mouse por encima</translation>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Notificaciones de escritorio</translation>
+        <location line="+2"/>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Notificar sobre los mensajes recibidos cuando el cliente no está enfocado.</translation>
+        <source>Accesstoken</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Alertar cuando haya una notificación</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">ID de dispositivo</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Mostrar una alerta cuando un mensaje sea recibido.
-Esto usualmente causa que el icono de la aplicación en la barra de tareas sea animado de alguna forma.</translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Huella de dispositivo</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Destacar los mensajes al pasar el mouse por encima</translation>
+        <source>Homeserver</source>
+        <translation type="unfinished">Servidor base</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Cambiar el color de fondo de los mensajes al pasar el mouse por encima.</translation>
+        <source>Version</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Activar emojis grandes en el chat</translation>
+        <location line="+2"/>
+        <source>Platform</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Hacer el tamaño de la fuente más grande si se muestran mensajes que sólo tienen unos cuantos emojis.</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">GENERAL</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
-        <translation>Enviar mensajes encriptados sólo a usuarios verificados</translation>
+        <location line="+2"/>
+        <source>TIMELINE</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
-        <translation>Requerir que un usuario este verificado para enviarle mensajes encriptados. Esto incrementa la seguridad pero hace la encriptación de extremo a extremo más tediosa.</translation>
+        <source>SIDEBAR</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Compartir claves con usuarios y dispositivos verificados</translation>
+        <source>TRAY</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation>Responde automáticamente a las solicitudes de claves de otros usuarios si están verificados, incluso si ese dispositivo no debería tener acceso a las claves de alguna otra forma.</translation>
+        <source>NOTIFICATIONS</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation>Copia de seguridad en línea de claves</translation>
+        <source>CALLS</source>
+        <translation type="unfinished">LLAMADAS</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
-        <translation>Descargar las claves de los mensajes y subirlas a tu copia de seguridad encriptada de la clave.</translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">ENCRIPTACIÓN</translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
-        <translation>Activar copia de seguridad en línea de la clave</translation>
+        <location line="+2"/>
+        <source>INFO</source>
+        <translation type="unfinished">INFORMACION</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation>Los autores de Nheko recomiendan no habilitar la copia de seguridad de la clave en línea hasta que este disponible la copia de seguridad simétrica de la clave en linea. ¿Activar de todos modos?</translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation type="unfinished">Claves de sesión</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>EN CACHE</translation>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>NO ESTA EN LA CACHE</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Factor de escala</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation type="unfinished">Clave para autofirmar</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Cambiar el factor de escala de toda la interfaz de usuario.</translation>
+        <source>User signing key</source>
+        <translation type="unfinished">Clave de usuario para firmas</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Tamaño de la fuente</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation type="unfinished">Clave privada maestra para firmar</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Nombre de la fuente</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished">Por defecto</translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Tema</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation type="unfinished">Escoge el sonido de notificación para las invitaciones de llamadas</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Tono</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished">Selecciona la anchura máxima en la línea de tiempo (en píxeles) Esto puede ayudar con la legibilidad en pantallas amplias cuando Nheko este en pantalla completa</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Escoge el sonido de notificación para las invitaciones de llamadas</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished">Establecer el tiempo de espera (en segundos) para el tiempo después de que la ventana
+pierde el enfoque antes de que la pantalla se desenfoque.
+Si se ajusta a 0, la pantalla se desenfoca inmediatamente después de la pérdida de enfoque. Valor máximo de 1 hora (3600 segundos)</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Micrófono</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Cambiar el color de fondo de los mensajes al pasar el mouse por encima.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Cámara</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">Hacer el tamaño de la fuente más grande si se muestran mensajes que sólo tienen unos cuantos emojis.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Resolución de la cámara</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation type="unfinished">Mantener la aplicación en segundo plano después de cerrar la ventana del cliente.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Tasa de fotogramas de la cámara</translation>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation type="unfinished">Ejecutar la aplicación en segundo plano sin mostrar la ventana del cliente.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Permitir el servidor de respaldo de asistencia</translation>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation type="unfinished">Mostrar una columna con los grupos y etiquetas junto a la lista de salas.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>Se usará turn.matrix.org como asistencia cuando tu servidor base no lo ofrezca.</translation>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">Permitir usar markdown en los mensajes.
+Cuando está deshabilitado, todos los mensajes son enviados en texto sin formato.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>ID de dispositivo</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Huella de dispositivo</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Claves de sesión</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished">Reproducir archivos como GIFs o WEBPs únicamente cuando pases sobre ellos.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished">Mostrar quién está escribiendo en una sala.
+Esto también activa o desactiva enviar notificaciones cuando estes escribiendo.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPORTAR</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished">Mostrar salas con mensajes nuevos primero
+Si esta opción está desactivada, la lista de salas será organizada por la fecha y hora de envío del último mensaje en la sala
+Si está activada, las salas con notificaciones activas (el pequeño círculo con un número) serán organizadas al principio. Las salas que hayas silenciado seguirán siendo organizadas por la fecha y hora del último mensaje enviado, ya que no pareces considerarlas igual de importantes que el resto de salas.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>EXPORTAR</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished">Mostrar botones para responder rápidamente, reaccionar o acceder opciones adicionales junto a cada mensaje.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>ENCRIPTACIÓN</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Mostrar si tu mensaje fue leido.
+El estado es mostrado junto a la fecha y hora en la que se envió el mensaje.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>GENERAL</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Notificar sobre los mensajes recibidos cuando el cliente no está enfocado.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>INTERFAZ</translation>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Mostrar una alerta cuando un mensaje sea recibido.
+Esto usualmente causa que el icono de la aplicación en la barra de tareas sea animado de alguna forma.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished">Cambiar la apariencia de los avatares de los usuarios en los chats.
+OFF   cuadrado, ON   Circulo.</translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
-        <translation>Mostrar un identicon en lugar de una letra cuando no hay un avatar seleccionado.</translation>
+        <translation type="unfinished">Mostrar un identicon en lugar de una letra cuando no hay un avatar seleccionado.</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation>Reproducir archivos como GIFs o WEBPs únicamente cuando pases sobre ellos.</translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation type="unfinished">Desencriptar mensajes mostrados en la barra lateral.
+Sólo afecta a los mensajes en chats encriptados.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Modo de pantalla táctil</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation type="unfinished">Cuando la ventana no este enfocada, la línea de tiempo se volverá borrosa.</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Will prevent text selection in the timeline to make touch scrolling easier.</source>
-        <translation>Evitar seleccionar texto en la línea de tiempo para hacer el desplazamiento táctil más sencillo.</translation>
+        <translation type="unfinished">Evitar seleccionar texto en la línea de tiempo para hacer el desplazamiento táctil más sencillo.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Nombre de fuente para Emojis</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Cambiar el factor de escala de toda la interfaz de usuario.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Clave privada maestra para firmar</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation type="unfinished">Se usará turn.matrix.org como asistencia cuando tu servidor base no lo ofrezca.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>Tu clave más importante. No necesitar tenerla en la cache, debido a que no tenerla en cache hace menos probable que pueda ser robada y sólo es necesaria para rotar tus otras llaves de firmas.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation type="unfinished">Requerir que un usuario este verificado para enviarle mensajes encriptados. Esto incrementa la seguridad pero hace la encriptación de extremo a extremo más tediosa.</translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>Clave de usuario para firmas</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation type="unfinished">Responde automáticamente a las solicitudes de claves de otros usuarios si están verificados, incluso si ese dispositivo no debería tener acceso a las claves de alguna otra forma.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>La clave para verificar a otros usuarios. Si está en la cache, verificar a un usuario verificará a todos sus dispositivos.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation type="unfinished">Descargar las claves de los mensajes y subirlas a tu copia de seguridad encriptada de la clave.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation>Clave para autofirmar</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation type="unfinished">La clave para desencriptar copias de seguridad en línea. Si está en la cache, puedes activar la copia de seguridad en línea para almacenar tus claves de encriptación de forma segura en el servidor.</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
-        <translation>La clave para verificar tus dispositivos. Si está en la cache, verificar uno de tus dispositivos lo verificara para todos tus dispositivos y otros usuarios que te hayan verificado.</translation>
+        <translation type="unfinished">La clave para verificar tus dispositivos. Si está en la cache, verificar uno de tus dispositivos lo verificara para todos tus dispositivos y otros usuarios que te hayan verificado.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Clave de respaldo</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation type="unfinished">La clave para verificar a otros usuarios. Si está en la cache, verificar a un usuario verificará a todos sus dispositivos.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation>La clave para desencriptar copias de seguridad en línea. Si está en la cache, puedes activar la copia de seguridad en línea para almacenar tus claves de encriptación de forma segura en el servidor.</translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation type="unfinished">Tu clave más importante. No necesitar tenerla en la cache, debido a que no tenerla en cache hace menos probable que pueda ser robada y sólo es necesaria para rotar tus otras llaves de firmas.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
-        <translation>Seleccionar un archivo</translation>
+        <translation type="unfinished">Seleccionar un archivo</translation>
     </message>
     <message>
         <location line="+0"/>
         <source>All Files (*)</source>
-        <translation>Todos los archivos (*)</translation>
+        <translation type="unfinished">Todos los archivos (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Abrir el archivo de sesiones</translation>
+        <translation type="unfinished">Abrir el archivo de sesiones</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Error</translation>
+        <translation type="unfinished">Error</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Contraseña de archivo</translation>
+        <translation type="unfinished">Contraseña de archivo</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Inserta la contraseña para desencriptar el archivo:</translation>
+        <translation type="unfinished">Inserta la contraseña para desencriptar el archivo:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>La contraseña no puede estar vacía</translation>
+        <translation type="unfinished">La contraseña no puede estar vacía</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Inserta la contraseña para encriptar tus claves de sesión:</translation>
+        <translation type="unfinished">Inserta la contraseña para encriptar tus claves de sesión:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>Archivo para guardar las claves de sesión exportadas</translation>
+        <translation type="unfinished">Archivo para guardar las claves de sesión exportadas</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>SOLICITAR</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>DESCARGAR</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>EN CACHE</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>NO ESTA EN LA CACHE</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPORTAR</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>EXPORTAR</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+105"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation>No se han encontrado chats privados encriptados con este usuario. Crea un chat privado encriptado con este usuario e intenta de nuevo.</translation>
     </message>
@@ -3172,12 +3339,12 @@ Esto usualmente causa que el icono de la aplicación en la barra de tareas sea a
 <context>
     <name>Waiting</name>
     <message>
-        <location filename="../qml/device-verification/Waiting.qml" line="+12"/>
+        <location filename="../qml/device-verification/Waiting.qml" line="+13"/>
         <source>Waiting for other party…</source>
         <translation>Esperando por el otro grupo...</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Esperando a que el otro lado acepte la solicitud de verificación.</translation>
     </message>
@@ -3192,7 +3359,7 @@ Esto usualmente causa que el icono de la aplicación en la barra de tareas sea a
         <translation>Esperando por el otro lado para completar el proceso de verificación.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Cancelar</translation>
     </message>
@@ -3200,22 +3367,22 @@ Esto usualmente causa que el icono de la aplicación en la barra de tareas sea a
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+34"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Bienvenido a nheko! El cliente de sobremesa para el protocolo Matrix.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Disfruta tu estadía!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>REGISTRARSE</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>INICIAR SESION</translation>
     </message>
@@ -3223,7 +3390,7 @@ Esto usualmente causa que el icono de la aplicación en la barra de tareas sea a
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+186"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Ayer</translation>
     </message>
@@ -3231,7 +3398,7 @@ Esto usualmente causa que el icono de la aplicación en la barra de tareas sea a
 <context>
     <name>dialogs::CreateRoom</name>
     <message>
-        <location filename="../../src/dialogs/CreateRoom.cpp" line="+43"/>
+        <location filename="../../src/dialogs/CreateRoom.cpp" line="+44"/>
         <source>Create room</source>
         <translation>Crear sala</translation>
     </message>
@@ -3299,7 +3466,7 @@ Esto usualmente causa que el icono de la aplicación en la barra de tareas sea a
 <context>
     <name>dialogs::FallbackAuth</name>
     <message>
-        <location filename="../../src/dialogs/FallbackAuth.cpp" line="+37"/>
+        <location filename="../../src/dialogs/FallbackAuth.cpp" line="+38"/>
         <source>Open Fallback in Browser</source>
         <translation>Abrir respaldo en el navegador</translation>
     </message>
@@ -3322,7 +3489,7 @@ Esto usualmente causa que el icono de la aplicación en la barra de tareas sea a
 <context>
     <name>dialogs::PreviewUploadOverlay</name>
     <message>
-        <location filename="../../src/dialogs/PreviewUploadOverlay.cpp" line="+29"/>
+        <location filename="../../src/dialogs/PreviewUploadOverlay.cpp" line="+30"/>
         <source>Upload</source>
         <translation>Subir</translation>
     </message>
@@ -3344,7 +3511,7 @@ Tamaño del archivo: %2
 <context>
     <name>dialogs::ReCaptcha</name>
     <message>
-        <location filename="../../src/dialogs/ReCaptcha.cpp" line="+37"/>
+        <location filename="../../src/dialogs/ReCaptcha.cpp" line="+38"/>
         <source>Open reCAPTCHA</source>
         <translation>Abrir reCAPTCHA</translation>
     </message>
@@ -3367,7 +3534,7 @@ Tamaño del archivo: %2
 <context>
     <name>message-description sent:</name>
     <message>
-        <location filename="../../src/Utils.h" line="+116"/>
+        <location filename="../../src/Utils.h" line="+117"/>
         <source>You sent an audio clip</source>
         <translation>Enviaste un clip de audio</translation>
     </message>
diff --git a/resources/langs/nheko_et.ts b/resources/langs/nheko_et.ts
index 269cbaf8c..6f7bbeb1a 100644
--- a/resources/langs/nheko_et.ts
+++ b/resources/langs/nheko_et.ts
@@ -35,28 +35,10 @@
         <translation>Lülita mikrofon välja</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Ootan kinnitust</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Ootan et teine osapool lõpetaks verifitseerimise.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Katkesta</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation>
             <numerusform>%1 ja veel %n teine kasutaja</numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Videokõne</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>Seadmed</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Võta vastu</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Tundmatu mikrofon: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Tundmatu kaamera: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Keeldu</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Ei suuda tuvastada mikrofoni.</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Kutse saatmine kasutajale ei õnnestunud: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Kutsutud kasutaja: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Puhverdatud andmete muutmine sobivaks rakenduse praeguse versiooniga ei õnnestunud. Sellel võib olla erinevaid põhjuseid. Palun saada meile veateade ja seni kasuta vanemat rakenduse versiooni. Aga kui sa soovid proovida, siis kustuta puhverdatud andmed käsitsi.</translation>
     </message>
@@ -194,7 +176,7 @@
         <translation>Kas sa tõesti soovid saata kutset kasutajale %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Kasutaja %1 kutsumine %2 jututuppa ei õnnestunud: %3</translation>
     </message>
@@ -254,7 +236,7 @@
         <translation>Suhtluskeeld eemaldatud: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Kas sa kindlasti soovid alustada otsevestlust kasutajaga %1?</translation>
     </message>
@@ -317,10 +299,15 @@
         <translation>Jututoast lahkumine ei õnnestunud: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Kasutaja %1 väljamüksamine %2 jututoast ei õnnestunud: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Dekrüpti andmed</translation>
     </message>
@@ -429,12 +416,12 @@
         <translation>Verifitseerimise kood</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Palun võrdle järgmiseid numbreid. Sa peaks nägema samu numbreid mõlema osapoole seadmes. Kui nad omavahel ei klapi, siis palun vajuta verifitseerimise katkestamiseks „Nad ei klapi“ nuppu!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Nad ei klapi!</translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Rakenda</translation>
     </message>
@@ -475,7 +462,7 @@
         <translation>Otsi</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Inimesed</translation>
     </message>
@@ -523,12 +510,12 @@
         <translation>Verifitseerimise kood</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Palun võrdle järgmiseid emojisid. Sa peaks nägema samu emojisid mõlema osapoole seadmes. Kui nad on erinevad, siis palun vajuta verifitseerimise katkestamiseks „Nad ei klapi“ nuppu!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>Nad ei klapi!</translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation>Selle sõnumi dekrüptimiseks pole veel vajalikke võtmeid. Me oleme neid serverist automaatselt laadimas, kuid kui sul on väga kiire, siis võid seda uuesti teha.</translation>
     </message>
@@ -612,7 +599,7 @@
         <translation>Verifitseerimine ei õnnestunud</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>Teise osapoole rakendus ei toeta siinkasutatavat verifitseerimisprotokolli.</translation>
     </message>
@@ -642,7 +629,7 @@
         <translation>Teadmata viga verifitseerimisel.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Sulge</translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Suuna sõnum edasi</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished">Kleepsud</translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation>Muudan pildipakki</translation>
     </message>
@@ -698,34 +742,34 @@
         <translation>Vali pildipaki reklaampilt</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation>Olekuvõti</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation>Pildikogu nimi</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation>Viide allikale</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation>Kasuta emojina</translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation>Kasuta kleepsuna</translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation>Lühend</translation>
     </message>
@@ -735,7 +779,7 @@
         <translation>Sisu</translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation>Eemalda pakist</translation>
     </message>
@@ -768,7 +812,7 @@
         <translation>Losa kasutajakontokohane pildipakk</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation>Uus jututoa pildipakk</translation>
     </message>
@@ -803,7 +847,7 @@
         <translation>Muuda</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation>Sulge</translation>
     </message>
@@ -821,7 +865,7 @@
         <translation>Kõik failid (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Meediafailide üleslaadimine ei õnnestunud. Palun proovi uuesti.</translation>
     </message>
@@ -834,7 +878,7 @@
         <translation>Kutsu kasutajaid %1 jututuppa</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation>Kasutajatunnus, kellele soovid kutset saata</translation>
     </message>
@@ -868,7 +912,7 @@
         <translation>Liitu jututoaga</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation>Jututoa tunnus või alias</translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Matrix&apos;i kasutajatunnus</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>näiteks @kadri:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -920,7 +964,7 @@ Kui Nheko ei suuda tuvastada sinu koduserverit, siis ta kuvab sulle andmevälja
         <translation>Sinu salasõna.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Seadme nimi</translation>
     </message>
@@ -930,7 +974,7 @@ Kui Nheko ei suuda tuvastada sinu koduserverit, siis ta kuvab sulle andmevälja
         <translation>Selle seadme nimi, mida näidetakse verifitseerimise ajal teisele kasutajatele. Kui sa ise nime ei pane, siis kasutame automaatselt pandud nime.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Koduserveri aadress</translation>
     </message>
@@ -940,27 +984,32 @@ Kui Nheko ei suuda tuvastada sinu koduserverit, siis ta kuvab sulle andmevälja
         <translation>server.minu:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>Aadress, mida sinu koduserveri kliendipoole API kasutab.
 Näiteks: https://server.minu:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>LOGI SISSE</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Sisestatud Matrix&apos;i kasutajatunnus on vigane - peaks olema @kasutaja:server.tld</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Koduserveri automaatne tuvastamine ei õnnestunud: päringuvastus oli vigane.</translation>
     </message>
@@ -970,7 +1019,7 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Koduserveri automaatne tuvastamine ei õnnestunud: tundmatu viga .well-known päringu tegemisel.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Protokolli järgi nõutavaid lõpppunkte ei leidunud. Ilmselt pole tegemist Matrix&apos;i serveriga.</translation>
     </message>
@@ -985,17 +1034,17 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Tekkis teadmata viga. Palun kontrolli, et koduserveri domeen on õige.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>ÃœHEKORDNE SISSELOGIMINE</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Tühi salasõna</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>Ühekordne sisselogimine ei õnnestunud</translation>
     </message>
@@ -1021,62 +1070,67 @@ Näiteks: https://server.minu:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+192"/>
-        <source>Encryption enabled</source>
-        <translation>Krüptimine on kasutusel</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>jututoa uus nimi on: %1</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>eemaldas jututoa nime</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>jututoa uus teema on: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>teema on eemaldatud</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation>%1 muutis jututoa tunnuspilti</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation>%1 muutis klammerdatud sõnumeid.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation>%1 muutis selle jututoa kleepsupakke ja emotikone.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation>%1 muutis selle jututoa aadresse.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation>%1 muutis kogukondi, kuhu see jututuba kuulub.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 lõi ja seadistas jututoa: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 helistas.</translation>
     </message>
@@ -1091,27 +1145,22 @@ Näiteks: https://server.minu:8787</translation>
         <translation>%1 helistas.</translation>
     </message>
     <message>
-        <location line="+38"/>
-        <source>Negotiating call...</source>
-        <translation>Ühendan kõnet…</translation>
+        <location line="+41"/>
+        <source>%1 is negotiating the call...</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation>Luba neid</translation>
     </message>
     <message>
-        <location line="-95"/>
+        <location line="-102"/>
         <source>%1 answered the call.</source>
         <translation>%1 vastas kõnele.</translation>
     </message>
     <message>
-        <location line="-148"/>
-        <source>removed</source>
-        <translation>eemaldatud</translation>
-    </message>
-    <message>
-        <location line="+160"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 lõpetas kõne.</translation>
     </message>
@@ -1119,7 +1168,7 @@ Näiteks: https://server.minu:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Lõpeta kõne</translation>
     </message>
@@ -1129,17 +1178,17 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Helista</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Saada fail</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Kirjuta sõnum…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation>Kleepsud</translation>
     </message>
@@ -1162,7 +1211,7 @@ Näiteks: https://server.minu:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Muuda</translation>
     </message>
@@ -1182,19 +1231,19 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Valikud</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation>&amp;Kopeeri</translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation>Kopeeri &amp;lingi asukoht</translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation>Re&amp;ageeri</translation>
     </message>
@@ -1229,7 +1278,7 @@ Näiteks: https://server.minu:8787</translation>
         <translation>&amp;Edasta</translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation>&amp;Märgi loetuks</translation>
     </message>
@@ -1282,7 +1331,7 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Saabus verifitseerimispäring</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation>Palun verifitseeri oma seadmed. See tagab, et muud kasutajad saaks kontrollida missugused seadmed on sinu omad ning krüptovõtmete automaatne varundus toimiks. Kas verifitseerime mõne verifitseerimata seadme nüüd? (Selleks peab sul mõni verifitseeritud seadmetest käepärast olema.)</translation>
     </message>
@@ -1312,7 +1361,7 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Sinu seadme (%1) jaoks on saabunud verifitseerimispäring.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Katkesta</translation>
     </message>
@@ -1385,7 +1434,7 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Ei suuda tuvastada mikrofoni.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Häälkõne</translation>
     </message>
@@ -1400,7 +1449,7 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Ekraan</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Katkesta</translation>
     </message>
@@ -1416,7 +1465,7 @@ Näiteks: https://server.minu:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Loo unikaalne profiil, mis võimaldab sul logida samaaegselt sisse erinevatele kasutajakontodele ning käivitada mitu Nheko programmiakent.</translation>
     </message>
@@ -1434,7 +1483,7 @@ Näiteks: https://server.minu:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation>Lugemisteatised</translation>
     </message>
@@ -1450,63 +1499,88 @@ Näiteks: https://server.minu:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Kasutajanimi</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>Kasutajanimi ei tohi olla tühi ning võib sisaldada vaid a-z, 0-9, ., _, =, -, / tähemärke.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Salasõna</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Palun vali tutvaline salasõna. Täpsemad nõuded salasõnale sõltuvad sinu koduserveri seadistustest.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Korda salasõna</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Koduserver</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>See on server, kus sa oma kasutajakonto registreerid. Kuna Matrix on hajutatud suhtlusvõrk, siis esmalt pead leidma sulle sobiliku koduserveri või panema püsti täitsa oma enda koduserveri.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Seadme nimi</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished">Selle seadme nimi, mida näidetakse verifitseerimise ajal teisele kasutajatele. Kui sa ise nime ei pane, siis kasutame automaatselt pandud nime.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>REGISTREERI</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Koduserveri automaatne tuvastamine ei õnnestunud: päringuvastus oli vigane.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation>Koduserveri automaatne tuvastamine ei õnnestunud: tundmatu viga .well-known päringu tegemisel.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Protokolli järgi nõutavaid lõpppunkte ei leidunud. Ilmselt pole tegemist Matrix&apos;i serveriga.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation>Päringule sain tagasi vigase vastuse. Palun kontrolli, et koduserveri domeen oleks õige.</translation>
     </message>
@@ -1516,25 +1590,35 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Tekkis teadmata viga. Palun kontrolli, et koduserveri domeen on õige.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Salasõna pole piisavalt pikk (vähemalt 8 tähemärki)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Salasõnad ei klapi omavahel</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Vigane koduserveri nimi</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Sulge</translation>
     </message>
@@ -1547,17 +1631,17 @@ Näiteks: https://server.minu:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation>Tutvu avalike jututubadega</translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation>Otsi avalikke jututube</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation>Vali oma koduserver</translation>
     </message>
@@ -1565,7 +1649,7 @@ Näiteks: https://server.minu:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>salvestatud versiooni ei leidu</translation>
     </message>
@@ -1613,7 +1697,7 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Loo uus silt…</translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation>Olekuteade</translation>
     </message>
@@ -1633,7 +1717,7 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Sisesta olekuteade</translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation>Logi välja</translation>
     </message>
@@ -1661,7 +1745,7 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Sulge</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation>Alusta uut vestlust</translation>
     </message>
@@ -1681,7 +1765,12 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Jututubade loend</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation>Kasutaja seadistused</translation>
     </message>
@@ -1694,7 +1783,7 @@ Näiteks: https://server.minu:8787</translation>
         <translation>%1 jututoa liikmed</translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation>
@@ -1731,12 +1820,12 @@ Näiteks: https://server.minu:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation>Jututoa seadistused</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation>
             <numerusform>%n liige</numerusform>
@@ -1829,6 +1918,21 @@ Näiteks: https://server.minu:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation>Muuda missugused efektipakid on kasutusel, eemalda neid ja loo uusi</translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1879,7 +1983,7 @@ Näiteks: https://server.minu:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation>Ootel kutse.</translation>
     </message>
@@ -1889,7 +1993,7 @@ Näiteks: https://server.minu:8787</translation>
         <translation>Jututoa eelvaade</translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation>Eelvaade pole saadaval</translation>
     </message>
@@ -1897,7 +2001,7 @@ Näiteks: https://server.minu:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation>Jätkamaks palun sisesta oma salasõna:</translation>
     </message>
@@ -1979,7 +2083,7 @@ Näiteks: https://server.minu:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation>Ühenduse loomine võtmehoidlaga ei õnnestunud</translation>
     </message>
@@ -2139,12 +2243,12 @@ Kui eelistad verifitseerimist, siis peab sul teine seade olema käepärast. Kui
         <translation>Verifitseerimine õnnestus</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Verifitseerimine õnnestus! Mõlema osapoole seadmed on nüüd verifitseeritud!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Sulge</translation>
     </message>
@@ -2152,7 +2256,7 @@ Kui eelistad verifitseerimist, siis peab sul teine seade olema käepärast. Kui
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Sõnumi ümbersõnastamine ebaõnnestus: %1</translation>
@@ -2270,12 +2374,27 @@ Reason: %4</source>
 Põhjus: %4</translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 sai kutse.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 muutis oma tunnuspilti.</translation>
     </message>
@@ -2300,32 +2419,12 @@ Põhjus: %4</translation>
         <translation>%1 lükkas liitumiskutse tagasi.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Tühistas %1 kutse.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 lahkus jututoast.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>Müksas kasutaja %1 välja.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>Eemaldas kasutaja %1 suhtluskeelu.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>Kasutaja %1 sai suhtluskeelu.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation>Põhjus: %1</translation>
     </message>
@@ -2335,12 +2434,17 @@ Põhjus: %4</translation>
         <translation>%1 muutis oma koputust jututoa uksele.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Sa liitusid jututoaga.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation>%1 muutis oma tunnuspilti ja seadistas uueks kuvatavaks nimeks %2.</translation>
     </message>
@@ -2350,18 +2454,18 @@ Põhjus: %4</translation>
         <translation>%1 seadistas uueks kuvatavaks nimeks %2.</translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Lükkas tagasi %1 koputuse jututoa uksele.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 lahkus jututoast peale seda, kui ta juba oli lahkunud!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 müksati välja.</translation>
     </message>
@@ -2369,7 +2473,7 @@ Põhjus: %4</translation>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Muudetud</translation>
     </message>
@@ -2415,17 +2519,17 @@ Põhjus: %4</translation>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Tagasi jututubade loendisse</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Jututuba on valimata</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation>See jututuba on krüptimata!</translation>
     </message>
@@ -2483,7 +2587,7 @@ Põhjus: %4</translation>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Näita</translation>
     </message>
@@ -2496,7 +2600,7 @@ Põhjus: %4</translation>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation>Registreerimiseks vajalikku töövoogu ei leidu!</translation>
     </message>
@@ -2521,7 +2625,7 @@ Põhjus: %4</translation>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Ãœldine kasutajaprofiil</translation>
     </message>
@@ -2531,7 +2635,7 @@ Põhjus: %4</translation>
         <translation>Kasutajaprofiil jututoas</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation>Muuda oma tunnuspilti kõikjal.</translation>
     </message>
@@ -2541,7 +2645,7 @@ Põhjus: %4</translation>
         <translation>Muuda oma tunnuspilti vaid selles jututoas.</translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation>Muuda oma kuvatavat nime kõikjal.</translation>
     </message>
@@ -2561,7 +2665,7 @@ Põhjus: %4</translation>
         <translation>See kasutajaprofiil on vaid selle jututoa kohane. Kasutaja kuvatav nimi ja tunnuspilt võivad muudes jutubades olla teistsugused.</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation>Vaata selle kasutaja üldist profiili.</translation>
     </message>
@@ -2645,523 +2749,586 @@ Põhjus: %4</translation>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>Vaikimisi</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Teema</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Mastaabitegur</translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Üle sõnumi liikumisel too ta esile</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Suured emojid ajajoonel</translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>Vähenda tegumiribale</translation>
+        <translation type="unfinished">Vähenda tegumiribale</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>Käivita tegumiribalt</translation>
+        <translation type="unfinished">Käivita tegumiribalt</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>Rühmade küljepaan</translation>
+        <translation type="unfinished">Rühmade küljepaan</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Ãœmmargused tunnuspildid</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Saada sõnumid Markdown-vormindusena</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>Profiil: %1</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>Vaikimisi</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>KÕNED</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation type="unfinished">Esita liikuvaid pilte vaid siis, kui kursor on pildi kohal</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation>Risttunnustamise võtmed</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Kirjutamisteatised</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>PÄRING</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Järjesta jututoad lugemata tubade alusel</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>ALLALAADIMISED</translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Näita ajajoonel nuppe</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Peale akna sulgemist jäta rakendus taustal tööle.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation type="unfinished">Piira ajajoone laiust</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Käivita rakendus taustal ilma kliendiakna kuvamiseta.</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Lugemisteatised</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Muuda vestlustes kuvatavate tunnuspiltide kuju.
-Väljalülitatuna - ruut, sisselülitatuna - ümmargune.</translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Töölauakeskkonna teavitused</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation>Kasuta identikone</translation>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Anna teavitustest märku</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Näita jututubade loendi kõrval veergu rühmade ja siltidega.</translation>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Ãœmmargused tunnuspildid</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Dekrüpti sõnumid külgribal</translation>
+        <location line="+2"/>
+        <source>Use identicons</source>
+        <translation type="unfinished">Kasuta identikone</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Dekrüpti külgpaanis kuvatavaid sõnumeid.
-Kehtib vaid läbivalt krüptitud vestluste puhul.</translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation type="unfinished">Dekrüpti sõnumid külgribal</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Privacy Screen</source>
-        <translation>Privaatsust tagav sirm</translation>
+        <translation type="unfinished">Privaatsust tagav sirm</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation>Kui aken kaotab fookuse,
-siis ajajoone vaade hägustub.</translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
-        <translation>Viivitus privaatsussirmi sisselülitamisel (sekundites [0 - 3600])</translation>
+        <translation type="unfinished">Viivitus privaatsussirmi sisselülitamisel (sekundites [0 - 3600])</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation>Seadista aeg sekundites, mille möödumisel
-peale akna fookuse kadumist ajajoone vaade hägustub.
-0 hägustab vaate koheselt. Pikim viivitus saab olla 1 tund (3600 sekundit)</translation>
+        <source>Touchscreen mode</source>
+        <translation type="unfinished">Puuteekraani režiim</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Näita ajajoonel nuppe</translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation type="unfinished">Fondi suurus</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Näita iga sõnumi kõrval nuppe, mis võimaldavad kiiresti vastata, reageerida või teha sõnumiga muid toiminguid.</translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Fondiperekond</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Piira ajajoone laiust</translation>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Fondiperekond emojide jaoks</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Seadista sõnumite suurim laius pikslites ajajoonel. See parandab loetavust suurel ekraanil, kui Nheko on avatud täisvaates.</translation>
+        <source>Ringtone</source>
+        <translation type="unfinished">Kõnehelin</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Kirjutamisteatised</translation>
+        <source>Microphone</source>
+        <translation type="unfinished">Mikrofon</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Näita, kes jututoas parasjagu kirjutab.
-Samaga lülitatakse sisse või välja ka sinu kirjutamisteatiste saatmine teistele kasutajatele.</translation>
+        <source>Camera</source>
+        <translation type="unfinished">Kaamera</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Järjesta jututoad lugemata tubade alusel</translation>
+        <location line="+2"/>
+        <source>Camera resolution</source>
+        <translation type="unfinished">Kaamera eraldusvõime</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Kuva uute sõnumitega jututoad esimesena.
-Kui see valik on välja lülitatud, siis jututoad järjestatakse viimati saanunud sõnumi ajatempli alusel.
-Kui see valik on sisse lülitatud, siis teavitustega jututoad (pisike ümmargune numbrifa ikoon) järjestatakse esimesena. Sinu poolt summutatud jututoad järjestatakse ikkagi ajatempli alusel, sest sa ei pea neid teistega võrreldes piisavalt tähtsaks.</translation>
+        <source>Camera frame rate</source>
+        <translation type="unfinished">Kaamera kaadrisagedus</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Lugemisteatised</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished">Luba kõnehõlbustusserveri kasutamist</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Näita, kas sinu sõnum sai loetud.
-Lugemise olekut kuvatakse ajatempli kõrval.</translation>
+        <source>Send encrypted messages to verified users only</source>
+        <translation type="unfinished">Saada krüptitud sõnumeid vaid verifitseeritud kasutajatele</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Saada sõnumid Markdown-vormindusena</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished">Jaga võtmeid verifitseeritud kasutajate ja seadmetega</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Luba Markdown-vormingu kasutamine sõnumite koostamisel.
-Kui Markdown ei ole kasutusel, siis saadetakse kõik sõnumid vormindamata tekstina.</translation>
+        <source>Online Key Backup</source>
+        <translation type="unfinished">Krüptovõtmete varundus võrgus</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
-        <translation>Esita liikuvaid pilte vaid siis, kui kursor on pildi kohal</translation>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Töölauakeskkonna teavitused</translation>
+        <location line="+2"/>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Näita saabunud sõnumi teavitust, kui Nheko ei ole parasjagu fookuses.</translation>
+        <source>Accesstoken</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Anna teavitustest märku</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">Seadme tunnus</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Sõnumi saabumisel näita teavitust.
-See tavaliselt tähendab, et rakenduse ikoon tegumiribal annab mingit sorti animatsiooniga sulle märku.</translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Seadme sõrmejälg</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Üle sõnumi liikumisel too ta esile</translation>
+        <source>Homeserver</source>
+        <translation type="unfinished">Koduserver</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Üle sõnumite liikudes muuda nende taustavärvi.</translation>
+        <source>Version</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Suured emojid ajajoonel</translation>
+        <location line="+2"/>
+        <source>Platform</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Tee sõnumi font suuremaks, kui sõnumis on vaid mõned emojid.</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">ÃœLDISED SEADISTUSED</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
-        <translation>Saada krüptitud sõnumeid vaid verifitseeritud kasutajatele</translation>
+        <location line="+2"/>
+        <source>TIMELINE</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
-        <translation>Selle tingimuse alusel peab kasutaja olema krüptitud sõnumivahetuse jaoks verifitseeritud. Niisugune nõue parandab turvalisust, kuid teeb läbiva krüptimise natuke ebamugavamaks.</translation>
+        <source>SIDEBAR</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Jaga võtmeid verifitseeritud kasutajate ja seadmetega</translation>
+        <source>TRAY</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation>Kui teised kasutajad on verifitseeritud, siis luba automaatselt vastata nende krüptovõtmete päringutele isegi siis, kui too seade ei peaks saama neid võtmeid kasutada.</translation>
+        <source>NOTIFICATIONS</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation>Krüptovõtmete varundus võrgus</translation>
+        <source>CALLS</source>
+        <translation type="unfinished">KÕNED</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
-        <translation>Luba krüptitud võtmete varunduseks laadida sõnumite krüptovõtmeid sinu serverisse või sinu serverist.</translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">KRÃœPTIMINE</translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
-        <translation>Võta kasutusele krüptovõtmete varundus võrgus</translation>
+        <location line="+2"/>
+        <source>INFO</source>
+        <translation type="unfinished">TEAVE</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation>Seni kuni sümmetriline krüptovõtmete varundamine pole teostatav, siis Nheko arendajad ei soovita krüptovõtmeid võrgus salvestada. Kas ikkagi jätkame?</translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation type="unfinished">Sessioonivõtmed</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>PUHVERDATUD</translation>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>PUHVERDAMATA</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Mastaabitegur</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation type="unfinished">Omatunnustusvõti</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Muuda kogu kasutajaliidese suurust.</translation>
+        <source>User signing key</source>
+        <translation type="unfinished">Kasutaja allkirjavõti</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Fondi suurus</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation type="unfinished">Allkirjastamise juurvõti</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Fondiperekond</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished">Vaikimisi</translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Teema</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation type="unfinished">Seadista helin, mis annab märku uuest kõnest</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Kõnehelin</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished">Seadista sõnumite suurim laius pikslites ajajoonel. See parandab loetavust suurel ekraanil, kui Nheko on avatud täisvaates.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Seadista helin, mis annab märku uuest kõnest</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished">Seadista aeg sekundites, mille möödumisel
+peale akna fookuse kadumist ajajoone vaade hägustub.
+0 hägustab vaate koheselt. Pikim viivitus saab olla 1 tund (3600 sekundit)</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Mikrofon</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Üle sõnumite liikudes muuda nende taustavärvi.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Kaamera</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">Tee sõnumi font suuremaks, kui sõnumis on vaid mõned emojid.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Kaamera eraldusvõime</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation type="unfinished">Peale akna sulgemist jäta rakendus taustal tööle.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Kaamera kaadrisagedus</translation>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation type="unfinished">Käivita rakendus taustal ilma kliendiakna kuvamiseta.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Luba kõnehõlbustusserveri kasutamist</translation>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation type="unfinished">Näita jututubade loendi kõrval veergu rühmade ja siltidega.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>Kui sinu koduserver ei paku välja sobilikku kõnehõlbustusserverit, siis kasuta turn.matrix.org teenust.</translation>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">Luba Markdown-vormingu kasutamine sõnumite koostamisel.
+Kui Markdown ei ole kasutusel, siis saadetakse kõik sõnumid vormindamata tekstina.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>Seadme tunnus</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Seadme sõrmejälg</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Sessioonivõtmed</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished">Esitame liikuvaid GIF ja WEBP pilte vaid siis, kui kursor on pildi kohal.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished">Näita, kes jututoas parasjagu kirjutab.
+Samaga lülitatakse sisse või välja ka sinu kirjutamisteatiste saatmine teistele kasutajatele.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPORDI</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished">Kuva uute sõnumitega jututoad esimesena.
+Kui see valik on välja lülitatud, siis jututoad järjestatakse viimati saanunud sõnumi ajatempli alusel.
+Kui see valik on sisse lülitatud, siis teavitustega jututoad (pisike ümmargune numbrifa ikoon) järjestatakse esimesena. Sinu poolt summutatud jututoad järjestatakse ikkagi ajatempli alusel, sest sa ei pea neid teistega võrreldes piisavalt tähtsaks.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>EKSPORDI</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished">Näita iga sõnumi kõrval nuppe, mis võimaldavad kiiresti vastata, reageerida või teha sõnumiga muid toiminguid.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>KRÃœPTIMINE</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Näita, kas sinu sõnum sai loetud.
+Lugemise olekut kuvatakse ajatempli kõrval.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>ÃœLDISED SEADISTUSED</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Näita saabunud sõnumi teavitust, kui Nheko ei ole parasjagu fookuses.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>LIIDES</translation>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Sõnumi saabumisel näita teavitust.
+See tavaliselt tähendab, et rakenduse ikoon tegumiribal annab mingit sorti animatsiooniga sulle märku.</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished">Muuda vestlustes kuvatavate tunnuspiltide kuju.
+Väljalülitatuna - ruut, sisselülitatuna - ümmargune.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
-        <translation>Kui tunnuspilt on seadistamata, siis kuva tähe asemel identikoni (matemaatilist tunnuspilti).</translation>
+        <translation type="unfinished">Kui tunnuspilt on seadistamata, siis kuva tähe asemel identikoni (matemaatilist tunnuspilti).</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation>Esitame liikuvaid GIF ja WEBP pilte vaid siis, kui kursor on pildi kohal.</translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation type="unfinished">Dekrüpti külgpaanis kuvatavaid sõnumeid.
+Kehtib vaid läbivalt krüptitud vestluste puhul.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Puuteekraani režiim</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation type="unfinished">Kui aken kaotab fookuse,
+siis ajajoone vaade hägustub.</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Will prevent text selection in the timeline to make touch scrolling easier.</source>
-        <translation>Selleks, et puutega kerimine oleks lihtsam, blokeerib see seadistus tekstivaliku ajajoonel.</translation>
+        <translation type="unfinished">Selleks, et puutega kerimine oleks lihtsam, blokeerib see seadistus tekstivaliku ajajoonel.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Fondiperekond emojide jaoks</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Muuda kogu kasutajaliidese suurust.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Allkirjastamise juurvõti</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation type="unfinished">Kui sinu koduserver ei paku välja sobilikku kõnehõlbustusserverit, siis kasuta turn.matrix.org teenust.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>Sinu kõige olulisem krüptovõti. See ei pea olema puhverdatud (mis hoiab ära ka võimaliku varastamise) ning teda on vaja vaid sinu muude allkirjavõtmete ringluse jaoks.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation type="unfinished">Selle tingimuse alusel peab kasutaja olema krüptitud sõnumivahetuse jaoks verifitseeritud. Niisugune nõue parandab turvalisust, kuid teeb läbiva krüptimise natuke ebamugavamaks.</translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>Kasutaja allkirjavõti</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation type="unfinished">Kui teised kasutajad on verifitseeritud, siis luba automaatselt vastata nende krüptovõtmete päringutele isegi siis, kui too seade ei peaks saama neid võtmeid kasutada.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>Teiste kasutajate verifitseerimiseks mõeldud võti. Kui see võti on puhverdatud, siis kasutaja verifitseerimine tähendab ka kõikide tema seadmete verifitseerimist.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation type="unfinished">Luba krüptitud võtmete varunduseks laadida sõnumite krüptovõtmeid sinu serverisse või sinu serverist.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation>Omatunnustusvõti</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation type="unfinished">Selle võtmega dekrüptitakse võrku varundatud muud võtmed. Kui see võti on puhverdatud, siis saad kasutusele võtta oma krüptovõtmete turvalise varundamise sinu koduserveris.</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
-        <translation>Selle võtmega verifitseerid oma seadmeid. Kui ta on puhverdatud, siis sinu seadme verifitseerimine märgib selle seadme usaldusväärseks nii sinu muude seadmete kui selliste kasutajate jaoks, kes on sind verifitseerinud.</translation>
+        <translation type="unfinished">Selle võtmega verifitseerid oma seadmeid. Kui ta on puhverdatud, siis sinu seadme verifitseerimine märgib selle seadme usaldusväärseks nii sinu muude seadmete kui selliste kasutajate jaoks, kes on sind verifitseerinud.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Varundusvõti</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation type="unfinished">Teiste kasutajate verifitseerimiseks mõeldud võti. Kui see võti on puhverdatud, siis kasutaja verifitseerimine tähendab ka kõikide tema seadmete verifitseerimist.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation>Selle võtmega dekrüptitakse võrku varundatud muud võtmed. Kui see võti on puhverdatud, siis saad kasutusele võtta oma krüptovõtmete turvalise varundamise sinu koduserveris.</translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation type="unfinished">Sinu kõige olulisem krüptovõti. See ei pea olema puhverdatud (mis hoiab ära ka võimaliku varastamise) ning teda on vaja vaid sinu muude allkirjavõtmete ringluse jaoks.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
-        <translation>Vali fail</translation>
+        <translation type="unfinished">Vali fail</translation>
     </message>
     <message>
         <location line="+0"/>
         <source>All Files (*)</source>
-        <translation>Kõik failid (*)</translation>
+        <translation type="unfinished">Kõik failid (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Ava sessioonide fail</translation>
+        <translation type="unfinished">Ava sessioonide fail</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Viga</translation>
+        <translation type="unfinished">Viga</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Faili salasõna</translation>
+        <translation type="unfinished">Faili salasõna</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Faili dekrüptimiseks sisesta salafraas:</translation>
+        <translation type="unfinished">Faili dekrüptimiseks sisesta salafraas:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>Salasõna ei saa olla tühi</translation>
+        <translation type="unfinished">Salasõna ei saa olla tühi</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Oma sessioonivõtmete krüptimiseks sisesta salafraas:</translation>
+        <translation type="unfinished">Oma sessioonivõtmete krüptimiseks sisesta salafraas:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>Fail, kuhu salvestad eksporditavad sessiooni krüptovõtmed</translation>
+        <translation type="unfinished">Fail, kuhu salvestad eksporditavad sessiooni krüptovõtmed</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>PÄRING</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>ALLALAADIMISED</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>PUHVERDATUD</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>PUHVERDAMATA</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPORDI</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>EKSPORDI</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation>Ühtegi krüptitud vestlust selle kasutajaga ei leidunud. Palun loo temaga krüptitud vestlus ja proovi uuesti.</translation>
     </message>
@@ -3174,7 +3341,7 @@ See tavaliselt tähendab, et rakenduse ikoon tegumiribal annab mingit sorti anim
         <translation>Ootan teise osapoole tegevust…</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Ootan, et teine osapool nõustuks verifitseerimispäringuga.</translation>
     </message>
@@ -3189,7 +3356,7 @@ See tavaliselt tähendab, et rakenduse ikoon tegumiribal annab mingit sorti anim
         <translation>Ootan, et teine osapool lõpetaks verifitseerimise.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Tühista</translation>
     </message>
@@ -3197,22 +3364,22 @@ See tavaliselt tähendab, et rakenduse ikoon tegumiribal annab mingit sorti anim
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Tere tulemast Nheko kasutajaks! Töölauarakendus Matrix&apos;i protokolli jaoks.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Head suhtlemist!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>REGISTREERU</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>LOGI SISSE</translation>
     </message>
@@ -3220,7 +3387,7 @@ See tavaliselt tähendab, et rakenduse ikoon tegumiribal annab mingit sorti anim
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Eile</translation>
     </message>
diff --git a/resources/langs/nheko_fi.ts b/resources/langs/nheko_fi.ts
index 0e8f62a63..264607179 100644
--- a/resources/langs/nheko_fi.ts
+++ b/resources/langs/nheko_fi.ts
@@ -35,28 +35,10 @@
         <translation>Vaimenna mikrofoni</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Odotetaan vahvistusta</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Odotetaan toista puolta saamaan vahvistus loppuun.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Peruuta</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Videopuhelu</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>Laitteet</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Hyväksy</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Tuntematon mikrofoni: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Tuntematon kamera: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Hylkää</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Mikrofonia ei löydy.</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Käyttäjää %1 ei onnistuttu kutsumaan</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Kutsuttu käyttäjä: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Välimuistin tuominen nykyiseen versioon epäonnistui. Tällä voi olla eri syitä. Luo vikailmoitus ja yritä sillä aikaa käyttää vanhempaa versiota. Voit myös vaihtoehtoisesti koettaa tyhjentää välimuistin käsin.</translation>
     </message>
@@ -194,7 +176,7 @@
         <translation>Haluatko kutsua %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Epäonnistuttiin kutsuminen %1 huoneeseen %2:%3</translation>
     </message>
@@ -254,7 +236,7 @@
         <translation>Purettiin porttikielto käyttäjältä %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Haluatko luoda yksityisen keskustelun käyttäjän %1 kanssa?</translation>
     </message>
@@ -317,10 +299,15 @@
         <translation>Huoneesta poistuminen epäonnistui: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Ei onnistuttu potkimaan käyttäjää %1 huoneesta %2: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Salaisuuksien salauksen purku</translation>
     </message>
@@ -429,12 +416,12 @@
         <translation>Vahvistuskoodi</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Vahvista seuraavat numerot. Sinun tulisi nähdä samat numerot molemmilla puolilla. Jos niissä on eroa, paina &quot;Ne eivät vastaa toisiaan&quot; peruaksesi vahvistuksen!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Ne eivät vastaa toisiaan!</translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Tallenna</translation>
     </message>
@@ -475,7 +462,7 @@
         <translation>Hae</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Ihmiset</translation>
     </message>
@@ -523,12 +510,12 @@
         <translation>Vahvistuskoodi</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Vahvista seuraava emoji. Sinun tulisi nähdä sama emoji molemmilla puolilla. Jos ne eroavat toisistaan, paina &quot;Ne eivät vastaa toisiaan&quot; peruaksesi vahvistuksen!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>Ne eivät vastaa toisiaan!</translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation>Tämän viestin avaamista varten ei ole avainta. Pyysimme avainta automaattisesti, mutta voit yrittää pyytää sitä uudestaan jos olet kärsimätön.</translation>
     </message>
@@ -612,7 +599,7 @@
         <translation>Vahvistus epäonnistui</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>Toinen asiakasohjelma ei tue vahvistusprotokollaamme.</translation>
     </message>
@@ -642,7 +629,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Sulje</translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Välitä viesti</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished">Tarrat</translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation>Muokataan kuvapakkausta</translation>
     </message>
@@ -698,34 +742,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation>TIla-avain</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation>Pakkauksen nimi</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation>Osoitus</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation>Käytä emojina</translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation>Käytä tarrana</translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation>Lyhyt koodi</translation>
     </message>
@@ -735,7 +779,7 @@
         <translation>Runko</translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation>Poista pakkauksesta</translation>
     </message>
@@ -768,7 +812,7 @@
         <translation>Luo tilipakkaus</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation>Uusi huonepakkaus</translation>
     </message>
@@ -803,7 +847,7 @@
         <translation>Muokkaa</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation>Sulje</translation>
     </message>
@@ -821,7 +865,7 @@
         <translation>Kaikki Tiedostot (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Mediaa ei onnistuttu lataamaan. Yritä uudelleen.</translation>
     </message>
@@ -834,7 +878,7 @@
         <translation>Kutsu käyttäjiä %1</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation>Käyttäjätunnus kutsuttavaksi</translation>
     </message>
@@ -868,7 +912,7 @@
         <translation>Liity huoneeseen</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation>Huoneen tunnus tai osoite</translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Matrix-tunnus</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>esim. @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -920,7 +964,7 @@ Jos Nheko ei onnistu löytämään kotipalvelintasi, se näyttää sinulle kent
         <translation>Salasanasi.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Laitteen nimi</translation>
     </message>
@@ -930,7 +974,7 @@ Jos Nheko ei onnistu löytämään kotipalvelintasi, se näyttää sinulle kent
         <translation>Tämän laitteen nimi, joka näytetään muille kun laitteitasi vahvistetaan. Oletusta käytetään jos mitään ei anneta.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Kotipalvelimen osoite</translation>
     </message>
@@ -940,27 +984,32 @@ Jos Nheko ei onnistu löytämään kotipalvelintasi, se näyttää sinulle kent
         <translation>server.my:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>Osoite, jota voidaan käyttää ottamaan yhteyttä kotipalvelimesi asiakasrajapintaan.
 Esimerkki: https://server.my:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>KIRJAUDU</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Väärä Matrix-tunnus. Esim.  @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Palvelimen tietojen hakeminen epäonnistui: virheellinen vastaus.</translation>
     </message>
@@ -970,7 +1019,7 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Palvelimen tietojen hakeminen epäonnistui: tuntematon virhe hakiessa .well-known -tiedostoa.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Vaadittuja päätepisteitä ei löydetty. Mahdollisesti ei Matrix-palvelin.</translation>
     </message>
@@ -985,17 +1034,17 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Tapahtui tuntematon virhe. Varmista, että kotipalvelimen osoite on pätevä.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>SSO-kirjautuminen</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Tyhjä salasana</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>SSO-kirjautuminen epäonnistui</translation>
     </message>
@@ -1021,67 +1070,67 @@ Esimerkki: https://server.my:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
-        <translation>poistettu</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
-        <translation>Salaus on käytössä</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>huoneen nimi muutettu: %1</translation>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>poistettu huoneen nimi</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>aihe vaihdettiin: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>poistettu aihe</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation>%1 muutti huoneen avataria</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 loi ja sääti huoneen: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 asetti äänipuhelun.</translation>
     </message>
@@ -1096,22 +1145,22 @@ Esimerkki: https://server.my:8787</translation>
         <translation>%1 soitti puhelun.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation>%1 vastasi puheluun.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 päätti puhelun.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
-        <translation>Neuvotellaan puhelua.…</translation>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation>Salli heidät sisään</translation>
     </message>
@@ -1119,7 +1168,7 @@ Esimerkki: https://server.my:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Punainen luuri</translation>
     </message>
@@ -1129,17 +1178,17 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Soita puhelu</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Lähetä tiedosto</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Kirjoita viesti…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation>Tarrat</translation>
     </message>
@@ -1162,7 +1211,7 @@ Esimerkki: https://server.my:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Muokkaa</translation>
     </message>
@@ -1182,19 +1231,19 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Asetukset</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation>&amp;Kopioi</translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation>Kopioi &amp;linkki sijainti</translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation>Rea&amp;goi</translation>
     </message>
@@ -1229,7 +1278,7 @@ Esimerkki: https://server.my:8787</translation>
         <translation>&amp;Lähetä eteenpäin</translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation>&amp;Merkitse luetuksi</translation>
     </message>
@@ -1282,7 +1331,7 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Otettiin vastaan vahvistuspyyntö</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1312,7 +1361,7 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Laitteesi (%1) on pyytänyt vahvistetuksi tulemista.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Peruuta</translation>
     </message>
@@ -1385,7 +1434,7 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Mikrofonia ei löydy.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Ääni</translation>
     </message>
@@ -1400,7 +1449,7 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Näyttö</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Peruuta</translation>
     </message>
@@ -1416,7 +1465,7 @@ Esimerkki: https://server.my:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Luo uniikki profili, joka mahdollistaa kirjautumisen usealle tilille samanaikaisesti ja useamman Nheko-instanssin aloittamisen.</translation>
     </message>
@@ -1434,7 +1483,7 @@ Esimerkki: https://server.my:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation>Lukukuittaukset</translation>
     </message>
@@ -1450,63 +1499,88 @@ Esimerkki: https://server.my:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Käyttäjänimi</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>Käyttäjätunnus ei saa olla tyhjä, ja se saa sisältää vain merkkejä a-z, 0-9, ., _, =, - ja /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Salasana</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Valitse turvallinen salasana. Tarkat vaatimukset salasanan vahvuudelle voivat riippua palvelimestasi.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Salasanan varmistus</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Kotipalvelin</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Palvelin, joka sallii rekisteröinnin. Koska matrix on hajautettu, sinun pitää ensin löytää palvelin jolle rekisteröityä tai ylläpitää omaasi.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Laitteen nimi</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished">Tämän laitteen nimi, joka näytetään muille kun laitteitasi vahvistetaan. Oletusta käytetään jos mitään ei anneta.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>REKISTERÖIDY</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Palvelimen tietojen hakeminen epäonnistui: virheellinen vastaus.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation>Palvelimen tietojen hakeminen epäonnistui: tuntematon virhe hakiessa .well-known -tiedostoa.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Vaadittuja päätepisteitä ei löydetty. Mahdollisesti ei Matrix-palvelin.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation>Vastaanotettiin virheellinen vastaus. Varmista, että kotipalvelimen osoite on pätevä.</translation>
     </message>
@@ -1516,25 +1590,35 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Tapahtui tuntematon virhe. Varmista, että kotipalvelimen osoite on pätevä.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Salasana ei ole tarpeeksi pitkä (vähintään 8 merkkiä)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Salasanat eivät täsmää</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Epäkelpo palvelimen nimi</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Sulje</translation>
     </message>
@@ -1547,17 +1631,17 @@ Esimerkki: https://server.my:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation>Tutki julkisia huoneita</translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation>Etsi julkisia huoneita</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1565,7 +1649,7 @@ Esimerkki: https://server.my:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>ei tallennettua versiota</translation>
     </message>
@@ -1613,7 +1697,7 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Luo uusi tagi…</translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation>Tilapäivitys</translation>
     </message>
@@ -1633,7 +1717,7 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Aseta tilapäivitys</translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation>Kirjaudu ulos</translation>
     </message>
@@ -1661,7 +1745,7 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Sulje</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation>Aloita uusi keskustelu</translation>
     </message>
@@ -1681,7 +1765,12 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Huoneluettelo</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation>Käyttäjäasetukset</translation>
     </message>
@@ -1694,7 +1783,7 @@ Esimerkki: https://server.my:8787</translation>
         <translation>&amp;1 jäsenet</translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation>
@@ -1731,12 +1820,12 @@ Esimerkki: https://server.my:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation>Huoneen asetukset</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1829,6 +1918,21 @@ Esimerkki: https://server.my:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation>Muuta mitkä pakkaukset ovat sallittuja, poista pakkauksia tai luo uusia</translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1879,7 +1983,7 @@ Esimerkki: https://server.my:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation>Kutsua odotetaan.</translation>
     </message>
@@ -1889,7 +1993,7 @@ Esimerkki: https://server.my:8787</translation>
         <translation>Esikatsellaan tätä huonetta</translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation>Esikatselu ei saatavilla</translation>
     </message>
@@ -1897,7 +2001,7 @@ Esimerkki: https://server.my:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1979,7 +2083,7 @@ Esimerkki: https://server.my:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation>Salattuun tallennustilaan ei saatu yhteyttä</translation>
     </message>
@@ -2137,12 +2241,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation>Onnistunut varmistus</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Varmistus onnistui! Molemmat osapuolet vahvistivat laitteensa!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Sulje</translation>
     </message>
@@ -2150,7 +2254,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Viestin muokkaus epäonnistui: %1</translation>
@@ -2267,12 +2371,27 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>&amp;1 kutsuttiin.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 muutti avatariaan.</translation>
     </message>
@@ -2297,32 +2416,12 @@ Reason: %4</source>
         <translation>%1 hylkäsi kutsunsa.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Peruttiin kutsu käyttäjälle %1.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 poistui huoneesta.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>Potkittiin %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>Poistettiin käyttäjän %1 porttikielto.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>Käyttäjälle %1 annettiin porttikielto.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation>Syy: %1</translation>
     </message>
@@ -2332,12 +2431,17 @@ Reason: %4</source>
         <translation>%1 perui koputuksensa.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Sinä liityit tähän huoneeseen.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation>%1 vaihtoi avatariaan ja vaihtoi näyttönimekseen %2.</translation>
     </message>
@@ -2347,18 +2451,18 @@ Reason: %4</source>
         <translation>%1 vaihtoi näyttönimekseen %2.</translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Hylättiin koputus käyttäjältä %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 lähti vaikka lähti jo aiemmin!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 koputti.</translation>
     </message>
@@ -2366,7 +2470,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Muokattu</translation>
     </message>
@@ -2412,17 +2516,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Takaisin huonelistaan</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Ei valittua huonetta</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation>Tämä huone ei ole salattu!</translation>
     </message>
@@ -2480,7 +2584,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Näytä</translation>
     </message>
@@ -2493,7 +2597,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2518,7 +2622,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Yleinen käyttäjäprofiili</translation>
     </message>
@@ -2528,7 +2632,7 @@ Reason: %4</source>
         <translation>Huoneen käyttäjäprofiili</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation>Vaihda avataria kaikkialla.</translation>
     </message>
@@ -2538,7 +2642,7 @@ Reason: %4</source>
         <translation>Muuta avataria. Toimii vain tässä huoneessa.</translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation>Muuta näyttönimeä kaikkialla.</translation>
     </message>
@@ -2558,7 +2662,7 @@ Reason: %4</source>
         <translation>Tämä on huoneelle erityinen profiili. Käyttäjän nimi ja avatar voivat erota niiden kaikkialla käytössä olevista versioista.</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation>Avaa tämän käyttäjän yleinen profiili.</translation>
     </message>
@@ -2642,523 +2746,586 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>Oletus</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Teema</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Mittakerroin</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Korosta viestiä kun kohdistin on päällä</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Iso emoji aikajanalla</translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>Pienennä ilmoitusalueelle</translation>
+        <translation type="unfinished">Pienennä ilmoitusalueelle</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>Aloita ilmoitusalueella</translation>
+        <translation type="unfinished">Aloita ilmoitusalueella</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>Ryhmäsivupalkki</translation>
+        <translation type="unfinished">Ryhmäsivupalkki</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Pyöreät avatarit</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Lähetä viestit Markdownina</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>profiili: %1</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>Oletus</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>PUHELUT</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation type="unfinished">Toista animoidut kuvat vain kun kohdistin on niiden päällä</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation>Ristiin allekirjoitetut avaimet</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Kirjoitusilmoitukset</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>PYYNTÖ</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Lajittele huoneet lukemattomien mukaan</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>LATAA</translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Näytä painikkeet aikajanalla</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Anna sovelluksen pyöriä taustalla asiakasohjelman ikkunan sulkemisen jälkeen.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation type="unfinished">Rajoita aikajanan leveyttä</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Aloita sovellus taustalla näyttämättä asiakasohjelman ikkunaa.</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Lukukuittaukset</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Muuta käyttäjien avatarien ulkonäköä keskusteluissa.
-POIS PÄÄLTÄ - neliö, PÄÄLLÄ - pyöreä.</translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Työpöytäilmoitukset</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Hälytä ilmoituksesta</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Näytä huonelistan vieressä tagit ja ryhmät sisältävä sarake.</translation>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Pyöreät avatarit</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Pura viestien salaus sivupalkissa</translation>
+        <location line="+2"/>
+        <source>Use identicons</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Pura sivupalkissa näkyvien viestien salaus
-Vaikuttaa vain salattujen keskustelujen viesteihin.</translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation type="unfinished">Pura viestien salaus sivupalkissa</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Privacy Screen</source>
-        <translation>Yksityisyysnäkymä</translation>
+        <translation type="unfinished">Yksityisyysnäkymä</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation>Kun ikkuna ei ole kohdistettuna, tämä aikajana
-sumennetaan.</translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
-        <translation>Yksityisyysnäkymän aikakatkaisu (sekunneissa [0-3600])</translation>
+        <translation type="unfinished">Yksityisyysnäkymän aikakatkaisu (sekunneissa [0-3600])</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation>Aseta aikakatkaisu (sekunneissa) ikkunan kohdistuksen kadottamiselle
-ennen kuin näkymä sumennetaan.
-Aseta nollaan, jotta sumennetaan heti kohdistus kadotetaan. Suurin arvo 1 tunti (3600 sekuntia)</translation>
+        <source>Touchscreen mode</source>
+        <translation type="unfinished">Kosketusnäyttötila</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Näytä painikkeet aikajanalla</translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation type="unfinished">Fonttikoko</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Näytä painikkeet vastataksesi nopeasti, reagoidaksesi tai päästäksesi lisätoimintoihin joka viestin vieressä.</translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Fonttiperhe</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Rajoita aikajanan leveyttä</translation>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Emojien fonttiperhe</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Aseta viestien suurin leveys aikajanalla (pikseleissä). Tämä voi auttaa luettavuutta laajakuvassa, kun Nheko on täyden ruudun tilassa.</translation>
+        <source>Ringtone</source>
+        <translation type="unfinished">Soittoääni</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Kirjoitusilmoitukset</translation>
+        <source>Microphone</source>
+        <translation type="unfinished">Mikrofoni</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Näytä kuka kirjoittaa huoneessa.
-Tämä myös sallii tai evää kirjoitusilmoitusten lähettämisen muille.</translation>
+        <source>Camera</source>
+        <translation type="unfinished">Kamera</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Lajittele huoneet lukemattomien mukaan</translation>
+        <location line="+2"/>
+        <source>Camera resolution</source>
+        <translation type="unfinished">Kameran resoluutio</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Näytä ensiksi huoneet, joissa on uusia viestejä.
-Jos tämä on poissa päältä, lista huoneista lajitellaan vain huoneen viimeisimmän viestin aikaleiman mukaan.
-Jos tämä on päällä, huoneet, joissa ilmoitukset ovat päällä (pieni ympyrä, jonka sisässä on numero), lajitellaan päällimmäisiksi. Mykistämäsi huoneet lajitellaan aikaleiman mukaan, koska et nähtävästi pidä niitä yhtä tärkeinä kuin muita huoneita.</translation>
+        <source>Camera frame rate</source>
+        <translation type="unfinished">Kameran ruudunpäivitys</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Lukukuittaukset</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished">Salli varajärjestelynä toimiva puhelua avustava palvelin</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Näytä jos viestisi oli luettu.
-Tila näytetään aikaleimojen vieressä.</translation>
+        <source>Send encrypted messages to verified users only</source>
+        <translation type="unfinished">Lähetä salatut viestit vain vahvistetuille käyttäjille</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Lähetä viestit Markdownina</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished">Jaa avaimet vahvistettujen käyttäjien ja laitteiden kanssa</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Salli Markdownin käyttö viesteissä.
-Kun poissa päältä, kaikki viestit lähetetään tavallisena tekstinä.</translation>
+        <source>Online Key Backup</source>
+        <translation type="unfinished">Avaimen varmuuskopiointi verkkoon</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
-        <translation>Toista animoidut kuvat vain kun kohdistin on niiden päällä</translation>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Työpöytäilmoitukset</translation>
+        <location line="+2"/>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Ilmoita vastaanotetusta viestistä kun ohjelma ei ole kohdistettuna.</translation>
+        <source>Accesstoken</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Hälytä ilmoituksesta</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">Laitteen tunnus</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Näytä hälytys kun viesti on vastaanotettu.
-Tämä yleensä saa sovelluksen kuvakkeen liikkumaan jollain tapaa tehtäväpalkissa.</translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Laitteen sormenjälki</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Korosta viestiä kun kohdistin on päällä</translation>
+        <source>Homeserver</source>
+        <translation type="unfinished">Kotipalvelin</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Muuta viestien taustaväriä kun kohdistimesi liikkuu niiden yli.</translation>
+        <source>Version</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Iso emoji aikajanalla</translation>
+        <location line="+2"/>
+        <source>Platform</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Suurenna fonttikokoa jos näytetään viestit vain muutamalla emojilla.</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">YLEISET ASETUKSET</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
-        <translation>Lähetä salatut viestit vain vahvistetuille käyttäjille</translation>
+        <location line="+2"/>
+        <source>TIMELINE</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
-        <translation>Vaatii käyttäjän olevan vahvistettu, jotta hänelle voi lähettää salattuja viestejä. Tämä parantaa turvallisuutta, mutta tekee päästä-päähän -salauksen hankalammaksi.</translation>
+        <source>SIDEBAR</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Jaa avaimet vahvistettujen käyttäjien ja laitteiden kanssa</translation>
+        <source>TRAY</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation>Automaattisesti vastaa avainpyyntöihin, jos ne ovat vahvistettuja, vaikka tuolla laitteella ei tulisi muuten olla pääsyä noihin avaimiin.</translation>
+        <source>NOTIFICATIONS</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation>Avaimen varmuuskopiointi verkkoon</translation>
+        <source>CALLS</source>
+        <translation type="unfinished">PUHELUT</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
-        <translation type="unfinished"></translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">SALAUS</translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
-        <translation>Salli avaimen varmuuskopiointi verkkoon</translation>
+        <location line="+2"/>
+        <source>INFO</source>
+        <translation type="unfinished">TIETOA</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation>Nhekon tekijät eivät suosittele avaimen varmuuskopiointia verkkoon kunnes avaimen symmetrinen varmuuskopiointi verkkoon on saatavilla. Sallitaanko se kuitenkin?</translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation type="unfinished">Istunnon avaimet</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>VÄLIMUISTISSA</translation>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>EI VÄLIMUISTISSA</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Mittakerroin</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation type="unfinished">Itsensä allekirjoittava avain</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Muuta koko käyttöliittymän kokoa.</translation>
+        <source>User signing key</source>
+        <translation type="unfinished">Käyttäjän allekirjoittava avain</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Fonttikoko</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation type="unfinished">Päätason allekirjoittava avain</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Fonttiperhe</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished">Oletus</translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Teema</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation type="unfinished">Aseta ilmoitusääni soimaan kun kutsu puheluun tulee</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Soittoääni</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished">Aseta viestien suurin leveys aikajanalla (pikseleissä). Tämä voi auttaa luettavuutta laajakuvassa, kun Nheko on täyden ruudun tilassa.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Aseta ilmoitusääni soimaan kun kutsu puheluun tulee</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished">Aseta aikakatkaisu (sekunneissa) ikkunan kohdistuksen kadottamiselle
+ennen kuin näkymä sumennetaan.
+Aseta nollaan, jotta sumennetaan heti kohdistus kadotetaan. Suurin arvo 1 tunti (3600 sekuntia)</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Mikrofoni</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Muuta viestien taustaväriä kun kohdistimesi liikkuu niiden yli.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Kamera</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">Suurenna fonttikokoa jos näytetään viestit vain muutamalla emojilla.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Kameran resoluutio</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation type="unfinished">Anna sovelluksen pyöriä taustalla asiakasohjelman ikkunan sulkemisen jälkeen.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Kameran ruudunpäivitys</translation>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation type="unfinished">Aloita sovellus taustalla näyttämättä asiakasohjelman ikkunaa.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Salli varajärjestelynä toimiva puhelua avustava palvelin</translation>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation type="unfinished">Näytä huonelistan vieressä tagit ja ryhmät sisältävä sarake.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>Käyttää apuna palvelinta turn.matrix.org silloin kun kotipalvelimesi ei sellaista tarjoa.</translation>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">Salli Markdownin käyttö viesteissä.
+Kun poissa päältä, kaikki viestit lähetetään tavallisena tekstinä.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>Laitteen tunnus</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Laitteen sormenjälki</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Istunnon avaimet</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished">Soittaa mediaa kuten GIF- ja WEBP-tiedostoja vain kun kursori on niiden kohdalla.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished">Näytä kuka kirjoittaa huoneessa.
+Tämä myös sallii tai evää kirjoitusilmoitusten lähettämisen muille.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>TUO</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished">Näytä ensiksi huoneet, joissa on uusia viestejä.
+Jos tämä on poissa päältä, lista huoneista lajitellaan vain huoneen viimeisimmän viestin aikaleiman mukaan.
+Jos tämä on päällä, huoneet, joissa ilmoitukset ovat päällä (pieni ympyrä, jonka sisässä on numero), lajitellaan päällimmäisiksi. Mykistämäsi huoneet lajitellaan aikaleiman mukaan, koska et nähtävästi pidä niitä yhtä tärkeinä kuin muita huoneita.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>VIE</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished">Näytä painikkeet vastataksesi nopeasti, reagoidaksesi tai päästäksesi lisätoimintoihin joka viestin vieressä.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>SALAUS</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Näytä jos viestisi oli luettu.
+Tila näytetään aikaleimojen vieressä.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>YLEISET ASETUKSET</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Ilmoita vastaanotetusta viestistä kun ohjelma ei ole kohdistettuna.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Näytä hälytys kun viesti on vastaanotettu.
+Tämä yleensä saa sovelluksen kuvakkeen liikkumaan jollain tapaa tehtäväpalkissa.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>KÄYTTÖLIITTYMÄ</translation>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished">Muuta käyttäjien avatarien ulkonäköä keskusteluissa.
+POIS PÄÄLTÄ - neliö, PÄÄLLÄ - pyöreä.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation>Soittaa mediaa kuten GIF- ja WEBP-tiedostoja vain kun kursori on niiden kohdalla.</translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation type="unfinished">Pura sivupalkissa näkyvien viestien salaus
+Vaikuttaa vain salattujen keskustelujen viesteihin.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Kosketusnäyttötila</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation type="unfinished">Kun ikkuna ei ole kohdistettuna, tämä aikajana
+sumennetaan.</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Will prevent text selection in the timeline to make touch scrolling easier.</source>
-        <translation>Estää tekstin valitsemisen aikajanalla, jotta koskettamalla vierittäminen on helpompaa.</translation>
+        <translation type="unfinished">Estää tekstin valitsemisen aikajanalla, jotta koskettamalla vierittäminen on helpompaa.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Emojien fonttiperhe</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Muuta koko käyttöliittymän kokoa.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Päätason allekirjoittava avain</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation type="unfinished">Käyttää apuna palvelinta turn.matrix.org silloin kun kotipalvelimesi ei sellaista tarjoa.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>Kaikkein tärkein avaimesi. Sinun ei tarvitse laittaa sitä välimuistiin, koska silloin sen varastaminen on epätodennäköistä ja sitä vaaditaan vain kierrättämään muita allekirjoittavia avaimiasi.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation type="unfinished">Vaatii käyttäjän olevan vahvistettu, jotta hänelle voi lähettää salattuja viestejä. Tämä parantaa turvallisuutta, mutta tekee päästä-päähän -salauksen hankalammaksi.</translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>Käyttäjän allekirjoittava avain</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation type="unfinished">Automaattisesti vastaa avainpyyntöihin, jos ne ovat vahvistettuja, vaikka tuolla laitteella ei tulisi muuten olla pääsyä noihin avaimiin.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>Avain vahvistamaan muita käyttäjiä. Jos se on välimuistissa, käyttäjän varmistaminen varmistaa hänen kaikki laitteensa.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation>Itsensä allekirjoittava avain</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation type="unfinished">Avain purkamaan avainten varmuuskopioita verkossa. Jos se laitetaan välimuistiin, voit sallia avainten varmuuskopioinnin verkossa säilöäksesi salausavaimet, jotka ovat turvallisesti salattuja palvelimella.</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
-        <translation>Avain vahvistamaan omat avaimesi. Jos se on välimuistisas, yhden laitteesi vahvistaminen laittaa sen vahvistetuksi kaikille muille laitteillesi ja käyttäjille, jotka ovat vahvistaneet sinut.</translation>
+        <translation type="unfinished">Avain vahvistamaan omat avaimesi. Jos se on välimuistisas, yhden laitteesi vahvistaminen laittaa sen vahvistetuksi kaikille muille laitteillesi ja käyttäjille, jotka ovat vahvistaneet sinut.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Varmuuskopioavain</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation type="unfinished">Avain vahvistamaan muita käyttäjiä. Jos se on välimuistissa, käyttäjän varmistaminen varmistaa hänen kaikki laitteensa.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation>Avain purkamaan avainten varmuuskopioita verkossa. Jos se laitetaan välimuistiin, voit sallia avainten varmuuskopioinnin verkossa säilöäksesi salausavaimet, jotka ovat turvallisesti salattuja palvelimella.</translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation type="unfinished">Kaikkein tärkein avaimesi. Sinun ei tarvitse laittaa sitä välimuistiin, koska silloin sen varastaminen on epätodennäköistä ja sitä vaaditaan vain kierrättämään muita allekirjoittavia avaimiasi.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
-        <translation>Valitse tiedosto</translation>
+        <translation type="unfinished">Valitse tiedosto</translation>
     </message>
     <message>
         <location line="+0"/>
         <source>All Files (*)</source>
-        <translation>Kaikki Tiedostot (*)</translation>
+        <translation type="unfinished">Kaikki Tiedostot (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Avaa Istuntoavaintiedosto</translation>
+        <translation type="unfinished">Avaa Istuntoavaintiedosto</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Virhe</translation>
+        <translation type="unfinished">Virhe</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Tiedoston Salasana</translation>
+        <translation type="unfinished">Tiedoston Salasana</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Anna salasana tiedoston salauksen purkamiseksi:</translation>
+        <translation type="unfinished">Anna salasana tiedoston salauksen purkamiseksi:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>Salasana ei voi olla tyhjä</translation>
+        <translation type="unfinished">Salasana ei voi olla tyhjä</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Anna salasana istuntoavaimien salaamiseksi:</translation>
+        <translation type="unfinished">Anna salasana istuntoavaimien salaamiseksi:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>Tiedosto, johon viedyt istuntoavaimet tallennetaan</translation>
+        <translation type="unfinished">Tiedosto, johon viedyt istuntoavaimet tallennetaan</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>PYYNTÖ</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>LATAA</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>VÄLIMUISTISSA</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>EI VÄLIMUISTISSA</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>TUO</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>VIE</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation>Salattua keskustelua ei löydetty tälle käyttäjälle. Luo salattu yksityiskeskustelu tämän käyttäjän kanssa ja yritä uudestaan.</translation>
     </message>
@@ -3171,7 +3338,7 @@ Tämä yleensä saa sovelluksen kuvakkeen liikkumaan jollain tapaa tehtäväpalk
         <translation>Odotetaan toista osapuolta…</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Odotetaan toista osapuolta hyväksymään vahvistuspyyntö.</translation>
     </message>
@@ -3186,7 +3353,7 @@ Tämä yleensä saa sovelluksen kuvakkeen liikkumaan jollain tapaa tehtäväpalk
         <translation>Odotetaan toista puolta saamaan vahvistus valmiiksi.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Peruuta</translation>
     </message>
@@ -3194,22 +3361,22 @@ Tämä yleensä saa sovelluksen kuvakkeen liikkumaan jollain tapaa tehtäväpalk
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Tervetuloa Nhekoon! Työpöytäsovellus Matrix-protokollalle.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Nauti vierailustasi!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>REKISTERÖIDY</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>KIRJAUDU</translation>
     </message>
@@ -3217,7 +3384,7 @@ Tämä yleensä saa sovelluksen kuvakkeen liikkumaan jollain tapaa tehtäväpalk
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Eilen</translation>
     </message>
diff --git a/resources/langs/nheko_fr.ts b/resources/langs/nheko_fr.ts
index f4a4a1ced..a3bc49fa5 100644
--- a/resources/langs/nheko_fr.ts
+++ b/resources/langs/nheko_fr.ts
@@ -35,28 +35,10 @@
         <translation>Couper le micro</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Attente de confirmation</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Attente de la vérification par le correspondant.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Annuler</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation>
             <numerusform>%1 et %n autre</numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Appel vidéo</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>Appareils</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Décrocher</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Microphone inconnu&#xa0;: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Caméra inconnue&#xa0;: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Rejeter</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Aucun microphone trouvé.</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Échec lors de l&apos;invitation de %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Utilisateur %1 invité(e)</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>La migration du cache vers la version actuelle a échoué. Cela peut arriver pour différentes raisons. Signalez le problème et essayez d&apos;utiliser une ancienne version en attendant. Vous pouvez également supprimer le cache manuellement.</translation>
     </message>
@@ -194,7 +176,7 @@
         <translation>Voulez-vous vraiment inviter %1 (%2)&#x202f;?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Échec de l&apos;invitation de %1 dans %2&#xa0;: %3</translation>
     </message>
@@ -254,7 +236,7 @@
         <translation>%1 n&apos;est plus banni(e)</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Voulez-vous vraiment commencer une discussion privée avec %1 ?</translation>
     </message>
@@ -317,10 +299,15 @@
         <translation>Impossible de quitter le salon&#xa0;: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Échec de l&apos;expulsion de %1 de %2&#x202f;&#x202f;: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Déchiffrer les secrets</translation>
     </message>
@@ -429,12 +416,12 @@
         <translation>Code de vérification</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Veuillez vérifier les chiffres suivants. Vous devriez voir les mêmes chiffres des deux côtés. Si ceux-ci diffèrent, veuillez choisir «&#x202f;Ils sont différents&#x202f;!&#x202f;» pour annuler la vérification&#x202f;!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Ils sont différents&#x202f;!</translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Appliquer</translation>
     </message>
@@ -475,7 +462,7 @@
         <translation>Chercher</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Personnes</translation>
     </message>
@@ -523,12 +510,12 @@
         <translation>Code de vérification</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Veuillez vérifier les émoji suivants. Vous devriez voir les mêmes émoji des deux côtés. S&apos;ils diffèrent, veuillez choisir « Ils sont différents&#x202f;!&#x202f;» pour annuler la vérification&#x202f;!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>Ils sont différents&#x202f;!</translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation>Il n&apos;y a pas de clé pour déverrouiller ce message. Nous avons demandé la clé automatiquement, mais vous pouvez tenter de la demander à nouveau si vous êtes impatient.</translation>
     </message>
@@ -612,7 +599,7 @@
         <translation>Échec de la vérification</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>L&apos;autre client ne supporte pas notre protocole de vérification.</translation>
     </message>
@@ -642,7 +629,7 @@
         <translation>Erreur de vérification inconnue.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Fermer</translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Transférer le message</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished">Autocollants</translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation>Modification du paquet d&apos;images</translation>
     </message>
@@ -698,34 +742,34 @@
         <translation>Sélectionner l&apos;image d&apos;aperçu pour le paquet</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation>Clef d&apos;état</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation>Nom de paquet</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation>Attribution</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation>Utiliser en tant qu&apos;émoji</translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation>Utiliser en tant qu&apos;autocollant</translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation>Raccourci</translation>
     </message>
@@ -735,7 +779,7 @@
         <translation>Corps</translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation>Retirer du paquet</translation>
     </message>
@@ -768,7 +812,7 @@
         <translation>Créer un paquet de compte</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation>Nouveau paquet de salle</translation>
     </message>
@@ -803,7 +847,7 @@
         <translation>Modifier</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation>Fermer</translation>
     </message>
@@ -821,7 +865,7 @@
         <translation>Tous les types de fichiers (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Échec de l&apos;envoi du média. Veuillez réessayer.</translation>
     </message>
@@ -834,7 +878,7 @@
         <translation>Inviter des utilisateurs dans %1</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation>Identifiant de l&apos;utilisateur à inviter</translation>
     </message>
@@ -868,7 +912,7 @@
         <translation>Rejoindre le salon</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation>Identifiant ou alias du salon</translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Identifiant Matrix</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>p. ex : @jean:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -920,7 +964,7 @@ Si Nheko n&apos;arrive pas à trouver votre serveur, il vous proposera de l&apos
         <translation>Votre mot de passe.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Nom de l&apos;appareil</translation>
     </message>
@@ -930,7 +974,7 @@ Si Nheko n&apos;arrive pas à trouver votre serveur, il vous proposera de l&apos
         <translation>Un nom pour cet appareil, qui sera montré aux autres utilisateurs lorsque ceux-ci vérifient vos appareils. Si aucun n&apos;est fourni, un nom par défaut est utilisé.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Adresse du serveur</translation>
     </message>
@@ -940,27 +984,32 @@ Si Nheko n&apos;arrive pas à trouver votre serveur, il vous proposera de l&apos
         <translation>monserveur.example.com:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>L&apos;adresse qui peut être utilisée pour joindre l&apos;API client de votre serveur.
 Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>CONNEXION</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Vous avez entré un identifiant Matrix invalide  exemple correct&#x202f;: @moi:monserveur.example.com)</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Échec de la découverte automatique. Réponse mal formée reçue.</translation>
     </message>
@@ -970,7 +1019,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Échec de la découverte automatique. Erreur inconnue lors de la demande de .well-known.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Les endpoints requis n&apos;ont pas été trouvés. Ce n&apos;est peut-être pas un serveur Matrix.</translation>
     </message>
@@ -985,17 +1034,17 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Une erreur inconnue est survenue. Vérifiez que le nom de domaine du serveur est valide.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>CONNEXION SSO</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Mot de passe vide</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>Échec de la connexion SSO</translation>
     </message>
@@ -1021,67 +1070,67 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
-        <translation>retiré</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
-        <translation>Chiffrement activé</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>nom du salon changé en&#xa0;: %1</translation>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>nom du salon retiré</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>sujet changé en&#xa0;: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>sujet retiré</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation>%1 a changé l&apos;avatar du salon</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation>%1 a changé les messages épinglés.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation>%1 a changé les autocollants et emotes dans ce salon.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation>%1 a changé les adresses pour ce salon.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation>%1 a changé les espaces parents pour ce salon.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 a créé et configuré le salon&#xa0;: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 a effectué un appel vocal.</translation>
     </message>
@@ -1096,22 +1145,22 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>%1 a appelé.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation>%1 a répondu à l&apos;appel.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 a terminé l&apos;appel.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
-        <translation>Négociation de l&apos;appel…</translation>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation>Les laisser entrer</translation>
     </message>
@@ -1119,7 +1168,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Raccrocher</translation>
     </message>
@@ -1129,17 +1178,17 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Appeler</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Envoyer un fichier</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Écrivez un message…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation>Autocollants</translation>
     </message>
@@ -1162,7 +1211,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Modifier</translation>
     </message>
@@ -1182,19 +1231,19 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Options</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation>&amp;Copier</translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation>Copier l&apos;adresse du &amp;lien</translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation>Ré&amp;agir</translation>
     </message>
@@ -1229,7 +1278,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>&amp;Faire suivre</translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation>&amp;Marquer comme lu</translation>
     </message>
@@ -1282,7 +1331,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Demande de vérification reçue</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation>Pour permettre à d&apos;autres utilisateurs de confirmer qu&apos;un appareil est vraiment le vôtre, vous pouvez le vérifier. Cela permet également aux sauvegardes de clés de déchiffrement de fonctionner automatiquement sur ces appareils, pour ne pas perdre vos messages chiffrés. Vérifier un appareil maintenant&#x202f;? (Vérifiez que celui-ci est à proximité).</translation>
     </message>
@@ -1312,7 +1361,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Votre appareil (%1) a demandé à être vérifié.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Annuler</translation>
     </message>
@@ -1385,7 +1434,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Pas de microphone trouvé.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Vocal</translation>
     </message>
@@ -1400,7 +1449,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Écran</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Annuler</translation>
     </message>
@@ -1416,7 +1465,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Créer un profil unique, vous permettant de vous connecter simultanément à plusieurs comptes et de lancer plusieurs instances de Nheko.</translation>
     </message>
@@ -1434,7 +1483,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation>Accusés de lecture</translation>
     </message>
@@ -1450,63 +1499,88 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Nom d&apos;utilisateur</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>Le nom d&apos;utilisateur ne doit pas être vide, et ne peut contenir que les caractères a-z, 0-9, ., _, =, -, et /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Mot de passe</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Veuillez choisir un mot de passe fort. Les demandes exactes sur la robustesse du mot de passe peuvent dépendre de votre serveur.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Confirmation du mot de passe</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Serveur</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Un serveur qui autorise les créations de compte. Matrix étant décentralisé, vous devez tout d&apos;abord trouver un serveur sur lequel vous pouvez vous inscrire, ou bien héberger le vôtre.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Nom de l&apos;appareil</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished">Un nom pour cet appareil, qui sera montré aux autres utilisateurs lorsque ceux-ci vérifient vos appareils. Si aucun n&apos;est fourni, un nom par défaut est utilisé.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>S&apos;ENREGISTRER</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Échec de la découverte automatique. Réponse mal formée reçue.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation>Échec de la découverte automatique. Erreur inconnue lors de la demande de .well-known.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Les endpoints requis n&apos;ont pas été trouvés. Ce n&apos;est peut-être pas un serveur Matrix.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation>Réponse mal formée reçue. Vérifiez que le nom de domaine du serveur est valide.</translation>
     </message>
@@ -1516,25 +1590,35 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Une erreur inconnue est survenue. Vérifiez que le nom de domaine du serveur est valide.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Le mot de passe n&apos;est pas assez long (8 caractères minimum)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Les mots de passe ne sont pas identiques</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Le nom du serveur est invalide</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Fermer</translation>
     </message>
@@ -1547,17 +1631,17 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation>Explorer les salons publics</translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation>Rechercher des salons publics</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation>Choisir un serveur personnalisé</translation>
     </message>
@@ -1565,7 +1649,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>pas de version enregistrée</translation>
     </message>
@@ -1613,7 +1697,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Créer une nouvelle étiquette…</translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation>Message de statut</translation>
     </message>
@@ -1633,7 +1717,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Changer le message de statut</translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation>Déconnexion</translation>
     </message>
@@ -1661,7 +1745,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Fermer</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation>Commencer une nouvelle discussion</translation>
     </message>
@@ -1681,7 +1765,12 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Annuaire des salons</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation>Paramètres utilisateur</translation>
     </message>
@@ -1694,7 +1783,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Membres de %1</translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation>
@@ -1731,12 +1820,12 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation>Configuration du salon</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation>
             <numerusform>%n membre</numerusform>
@@ -1829,6 +1918,21 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation>Modifier quels paquets sont activés, retirer des paquets ou bien en créer de nouveaux</translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1879,7 +1983,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation>Invitation en attente.</translation>
     </message>
@@ -1889,7 +1993,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
         <translation>Prévisualisation du salon</translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation>Aucune prévisualisation disponible</translation>
     </message>
@@ -1897,7 +2001,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation>Veuillez saisir votre mot de passe pour continuer&#xa0;:</translation>
     </message>
@@ -1979,7 +2083,7 @@ Exemple&#xa0;: https&#x202f;://monserveur.example.com:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation>Échec de la connexion au stockage des secrets</translation>
     </message>
@@ -2139,12 +2243,12 @@ Si vous choisissez de vérifier, vous aurez besoin de l&apos;autre appareil. Si
         <translation>Vérification réussie</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Vérification réussie&#x202f;!  Les deux côtés ont vérifié leur appareil&#x202f;!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Fermer</translation>
     </message>
@@ -2152,7 +2256,7 @@ Si vous choisissez de vérifier, vous aurez besoin de l&apos;autre appareil. Si
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Échec de la suppression du message&#xa0;: %1</translation>
@@ -2270,12 +2374,27 @@ Reason: %4</source>
 Raison : %4</translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 a été invité(e).</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 a changé son avatar.</translation>
     </message>
@@ -2300,32 +2419,12 @@ Raison : %4</translation>
         <translation>%1 a rejeté son invitation.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>%1 n&apos;est plus invité.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 a quitté le salon.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>%1 a été expulsé.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>%1 n&apos;est plus banni.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 a été banni.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation>Raison : %1</translation>
     </message>
@@ -2335,14 +2434,19 @@ Raison : %4</translation>
         <translation>%1 a arrêté de toquer.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Vous avez rejoint ce salon.</translation>
     </message>
     <message>
-        <location line="+1023"/>
-        <source>%1 has changed their avatar and changed their display name to %2.</source>
-        <translation>%1 a changé son avatar et changé son surnom en %2.</translation>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
+        <source>%1 has changed their avatar and changed their display name to %2.</source>
+        <translation>%1 a changé son avatar et changé son surnom en %2.</translation>
     </message>
     <message>
         <location line="+4"/>
@@ -2350,18 +2454,18 @@ Raison : %4</translation>
         <translation>%1 a changé son surnom en %2.</translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>%1 a été rejeté après avoir toqué.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 a quitté le salon après l&apos;avoir déjà quitté&#x202f;!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 a toqué.</translation>
     </message>
@@ -2369,7 +2473,7 @@ Raison : %4</translation>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Modifié</translation>
     </message>
@@ -2415,17 +2519,17 @@ Raison : %4</translation>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Revenir à la liste des salons</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Pas de salon sélectionné</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation>Ce salon n&apos;est pas chiffré !</translation>
     </message>
@@ -2483,7 +2587,7 @@ Raison : %4</translation>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Montrer</translation>
     </message>
@@ -2496,7 +2600,7 @@ Raison : %4</translation>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation>Aucun mécanisme de création de compte disponible !</translation>
     </message>
@@ -2521,7 +2625,7 @@ Raison : %4</translation>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Profil général de l&apos;utilisateur</translation>
     </message>
@@ -2531,7 +2635,7 @@ Raison : %4</translation>
         <translation>Profil utilisateur spécifique au salon</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation>Changer l&apos;image de profil partout.</translation>
     </message>
@@ -2541,7 +2645,7 @@ Raison : %4</translation>
         <translation>Changer l&apos;image de profil. Ne s&apos;appliquera qu&apos;à ce salon.</translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation>Changer de surnom partout.</translation>
     </message>
@@ -2561,7 +2665,7 @@ Raison : %4</translation>
         <translation>Ceci est un profil spécifique à un salon. Le surnom et l&apos;image de profil peuvent être différents de leurs versions globales.</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation>Ouvrir le profil global de cet utilisateur.</translation>
     </message>
@@ -2645,525 +2749,588 @@ Raison : %4</translation>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>Défaut</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Thème</translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Facteur d&apos;échelle</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Surligner les messages survolés</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Grands emojis dans la discussion</translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>Réduire dans la barre des tâches</translation>
+        <translation type="unfinished">Réduire dans la barre des tâches</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>Démarrer dans la barre des tâches</translation>
+        <translation type="unfinished">Démarrer dans la barre des tâches</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>Barre latérale des groupes</translation>
+        <translation type="unfinished">Barre latérale des groupes</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Avatars circulaires</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Composer les messages au format Markdown</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>profil&#x202f;: %1</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>Défaut</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>APPELS</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation type="unfinished">Ne jouer les images animées que quand survolées</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation>Clés de signature croisée (Cross-Signing)</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Notifications d&apos;écriture</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>REQUÊTE</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Trier les salons par statut de lecture</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>TÉLÉCHARGER</translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Montrer les boutons dans la discussion</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Conserver l&apos;application en arrière-plan après avoir fermé la fenêtre du client.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation type="unfinished">Limiter la largeur de la discussion</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Démarrer l&apos;application en arrière-plan sans montrer la fenêtre du client.</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Accusés de lecture</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Change l&apos;apparence des avatars des utilisateurs dans les discussions.
-OFF – carré, ON – cercle.</translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Notifications sur le bureau</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation>Utiliser des identicônes</translation>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Alerter sur notification</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Affiche une colonne contenant les groupes et étiquettes à côté de la liste des salons.</translation>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Avatars circulaires</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Déchiffrer les messages dans la liste des salons</translation>
+        <location line="+2"/>
+        <source>Use identicons</source>
+        <translation type="unfinished">Utiliser des identicônes</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Déchiffre les messages montrés dans la liste des salons.
-Cela n&apos;affecte que les messages des salons chiffrés.</translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation type="unfinished">Déchiffrer les messages dans la liste des salons</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Privacy Screen</source>
-        <translation>Protection anti-indiscrétion</translation>
+        <translation type="unfinished">Protection anti-indiscrétion</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation>Lorsque la fenêtre n&apos;est plus active, la discussion
-sera floutée.</translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
-        <translation>Attente pour l&apos;activation de la protection anti-indiscrétion (en secondes, 0 à 3600)</translation>
+        <translation type="unfinished">Attente pour l&apos;activation de la protection anti-indiscrétion (en secondes, 0 à 3600)</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation>Temps d&apos;attente (en secondes) avant le floutage des
-conversations lorsque la fenêtre n&apos;est plus active.
-Régler à 0 pour flouter immédiatement lorsque la fenêtre n&apos;est plus au premier plan.
-Valeur maximale d&apos;une heure (3600 secondes).</translation>
+        <source>Touchscreen mode</source>
+        <translation type="unfinished">Mode écran tactile</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Montrer les boutons dans la discussion</translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation type="unfinished">Taille de police</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Montre les boutons de réponse, réaction et options additionnelles près de chaque message.</translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Nom de police</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Limiter la largeur de la discussion</translation>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Nom de police pour émoji</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Règle la largeur maximale des messages dans la discussion (en pixels). Cela peut aider la lisibilité sur les écrans larges, quand Nheko est maximisé.</translation>
+        <source>Ringtone</source>
+        <translation type="unfinished">Sonnerie</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Notifications d&apos;écriture</translation>
+        <source>Microphone</source>
+        <translation type="unfinished">Microphone</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Montre qui écrit un message dans un salon.
-Ceci activera ou désactivera également l&apos;envoi de notifications similaires de votre part.</translation>
+        <source>Camera</source>
+        <translation type="unfinished">Caméra</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Trier les salons par statut de lecture</translation>
+        <location line="+2"/>
+        <source>Camera resolution</source>
+        <translation type="unfinished">Résolution de la caméra</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Montre les salons qui contiennent de nouveaux messages en premier.
-Si non activé, la liste des salons sera uniquement triée en fonction de la date du dernier message.
-Si activé, les salons qui ont des notifications actives (le petit cercle avec un chiffre dedans) seront affichés en premier.
-Les salons que vous avez rendu silencieux seront toujours triés par date du dernier message, puisqu&apos;ils sont considérés comme moins importants.</translation>
+        <source>Camera frame rate</source>
+        <translation type="unfinished">Fréquence d’acquisition de la caméra</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Accusés de lecture</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished">Autoriser le serveur de secours pour les appels</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Montre si votre message a été lu.
-Le statut est montré près de la date des messages.</translation>
+        <source>Send encrypted messages to verified users only</source>
+        <translation type="unfinished">N&apos;envoyer des messages chiffrés qu&apos;aux utilisateurs vérifiés</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Composer les messages au format Markdown</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished">Partager vos clés avec les utilisateurs et appareils que vous avez vérifiés</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Autorise l&apos;utilisation de markdown dans les messages.
-Lorsque désactivé, tous les messages sont envoyés en texte brut.</translation>
+        <source>Online Key Backup</source>
+        <translation type="unfinished">Sauvegarde des clefs en ligne</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
-        <translation>Ne jouer les images animées que quand survolées</translation>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Notifications sur le bureau</translation>
+        <location line="+2"/>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Notifie des messages reçus lorsque la fenêtre du client n&apos;est pas active.</translation>
+        <source>Accesstoken</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Alerter sur notification</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">Identifiant de l&apos;appareil</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Alerte lorsqu&apos;un message est reçu.
-Cela met l&apos;application en évidence dans la barre des tâches.</translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Empreinte de l&apos;appareil</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Surligner les messages survolés</translation>
+        <source>Homeserver</source>
+        <translation type="unfinished">Serveur</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Change l&apos;arrière plan des messages lorsqu&apos;ils sont survolés avec la souris.</translation>
+        <source>Version</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Grands emojis dans la discussion</translation>
+        <location line="+2"/>
+        <source>Platform</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Augmente la taille de la police des messages contenant uniquement quelques emojis.</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">GÉNÉRAL</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
-        <translation>N&apos;envoyer des messages chiffrés qu&apos;aux utilisateurs vérifiés</translation>
+        <location line="+2"/>
+        <source>TIMELINE</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
-        <translation>Requiert qu&apos;un utilisateur soit vérifié pour lui envoyer des messages chiffrés. La sécurité en est améliorée, mais le chiffrement de bout en bout devient plus fastidieux.</translation>
+        <source>SIDEBAR</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Partager vos clés avec les utilisateurs et appareils que vous avez vérifiés</translation>
+        <source>TRAY</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation>Répond automatiquement aux requêtes de clefs des autres utilisateurs, s&apos;ils sont vérifiés, même si cet appareil ne devrait pas avoir accès à ces clefs autrement.</translation>
+        <source>NOTIFICATIONS</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation>Sauvegarde des clefs en ligne</translation>
+        <source>CALLS</source>
+        <translation type="unfinished">APPELS</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
-        <translation>Télécharge les clefs de chiffrement de message depuis et envoie vers la sauvegarde chiffrée en ligne de clefs.</translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">CHIFFREMENT</translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
-        <translation>Activer la sauvegarde de clefs en ligne</translation>
+        <location line="+2"/>
+        <source>INFO</source>
+        <translation type="unfinished">INFO</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation>Les auteurs de Nheko ne recommandent pas d&apos;activer la sauvegarde en ligne de clefs jusqu&apos;à ce que la sauvegarde symétrique en ligne de clefs soit disponible. Activer quand même ?</translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation type="unfinished">Clés de session</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>EN CACHE</translation>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>PAS DANS LE CACHE</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Facteur d&apos;échelle</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation type="unfinished">Clé d&apos;auto-vérification</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Agrandit l&apos;interface entière par ce facteur.</translation>
+        <source>User signing key</source>
+        <translation type="unfinished">Clé de signature de l&apos;utilisateur</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Taille de police</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation type="unfinished">Clé de signature maîtresse de l&apos;utilisateur</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Nom de police</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished">Défaut</translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Thème</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation type="unfinished">Choisit le son de notification lors de la réception d&apos;un appel</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Sonnerie</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished">Règle la largeur maximale des messages dans la discussion (en pixels). Cela peut aider la lisibilité sur les écrans larges, quand Nheko est maximisé.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Choisit le son de notification lors de la réception d&apos;un appel</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished">Temps d&apos;attente (en secondes) avant le floutage des
+conversations lorsque la fenêtre n&apos;est plus active.
+Régler à 0 pour flouter immédiatement lorsque la fenêtre n&apos;est plus au premier plan.
+Valeur maximale d&apos;une heure (3600 secondes).</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Microphone</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Change l&apos;arrière plan des messages lorsqu&apos;ils sont survolés avec la souris.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Caméra</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">Augmente la taille de la police des messages contenant uniquement quelques emojis.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Résolution de la caméra</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation type="unfinished">Conserver l&apos;application en arrière-plan après avoir fermé la fenêtre du client.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Fréquence d’acquisition de la caméra</translation>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation type="unfinished">Démarrer l&apos;application en arrière-plan sans montrer la fenêtre du client.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Autoriser le serveur de secours pour les appels</translation>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation type="unfinished">Affiche une colonne contenant les groupes et étiquettes à côté de la liste des salons.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>Cela utilisera le serveur turn.matrix.org pour vous aider à rejoindre les appels si votre serveur ne propose pas de fonctionnalité TURN afin de traverser les pare-feu et NAT restrictifs.</translation>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">Autorise l&apos;utilisation de markdown dans les messages.
+Lorsque désactivé, tous les messages sont envoyés en texte brut.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>Identifiant de l&apos;appareil</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Empreinte de l&apos;appareil</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Clés de session</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished">Joue les images comme les GIFs ou WEBPs uniquement quand la souris est au-dessus.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished">Montre qui écrit un message dans un salon.
+Ceci activera ou désactivera également l&apos;envoi de notifications similaires de votre part.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPORTER</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished">Montre les salons qui contiennent de nouveaux messages en premier.
+Si non activé, la liste des salons sera uniquement triée en fonction de la date du dernier message.
+Si activé, les salons qui ont des notifications actives (le petit cercle avec un chiffre dedans) seront affichés en premier.
+Les salons que vous avez rendu silencieux seront toujours triés par date du dernier message, puisqu&apos;ils sont considérés comme moins importants.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>EXPORTER</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished">Montre les boutons de réponse, réaction et options additionnelles près de chaque message.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>CHIFFREMENT</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Montre si votre message a été lu.
+Le statut est montré près de la date des messages.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>GÉNÉRAL</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Notifie des messages reçus lorsque la fenêtre du client n&apos;est pas active.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Alerte lorsqu&apos;un message est reçu.
+Cela met l&apos;application en évidence dans la barre des tâches.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>INTERFACE</translation>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished">Change l&apos;apparence des avatars des utilisateurs dans les discussions.
+OFF – carré, ON – cercle.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
-        <translation>Montre une image générée (identicône) au lieu d&apos;une lettre lorsque aucun avatar n&apos;est présent.</translation>
+        <translation type="unfinished">Montre une image générée (identicône) au lieu d&apos;une lettre lorsque aucun avatar n&apos;est présent.</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation>Joue les images comme les GIFs ou WEBPs uniquement quand la souris est au-dessus.</translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation type="unfinished">Déchiffre les messages montrés dans la liste des salons.
+Cela n&apos;affecte que les messages des salons chiffrés.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Mode écran tactile</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation type="unfinished">Lorsque la fenêtre n&apos;est plus active, la discussion
+sera floutée.</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Will prevent text selection in the timeline to make touch scrolling easier.</source>
-        <translation>Empêche la sélection de texte dans la discussion pour faciliter le défilement tactile.</translation>
+        <translation type="unfinished">Empêche la sélection de texte dans la discussion pour faciliter le défilement tactile.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Nom de police pour émoji</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Agrandit l&apos;interface entière par ce facteur.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Clé de signature maîtresse de l&apos;utilisateur</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation type="unfinished">Cela utilisera le serveur turn.matrix.org pour vous aider à rejoindre les appels si votre serveur ne propose pas de fonctionnalité TURN afin de traverser les pare-feu et NAT restrictifs.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>Votre clé la plus importante. Vous n&apos;avez pas besoin de la conserver dans le cache, car ne pas la conserver rend son vol plus difficile, et celle-ci n&apos;est nécessaire qu&apos;afin de renouveler vos autres clés de signature.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation type="unfinished">Requiert qu&apos;un utilisateur soit vérifié pour lui envoyer des messages chiffrés. La sécurité en est améliorée, mais le chiffrement de bout en bout devient plus fastidieux.</translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>Clé de signature de l&apos;utilisateur</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation type="unfinished">Répond automatiquement aux requêtes de clefs des autres utilisateurs, s&apos;ils sont vérifiés, même si cet appareil ne devrait pas avoir accès à ces clefs autrement.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>La clé utilisée pour vérifier d&apos;autres utilisateurs. Si celle-ci est dans le cache, vérifier un utilisateur vérifiera tous ses appareils.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation type="unfinished">Télécharge les clefs de chiffrement de message depuis et envoie vers la sauvegarde chiffrée en ligne de clefs.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation>Clé d&apos;auto-vérification</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation type="unfinished">La clé utilisée pour déchiffrer les sauvegardes de clé stockées en ligne. Si celle-ci est dans le cache, vous pouvez activer la sauvegarde de vos clés en ligne afin d&apos;en conserver une copie chiffrée en toute sécurité sur le serveur.</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
-        <translation>La clé pour vérifier vos propres appareils. Si celle-ci est dans le cache, vérifier l&apos;un de vos appareils le marquera vérifié pour tous les autres appareils et utilisateurs qui vous ont vérifié.</translation>
+        <translation type="unfinished">La clé pour vérifier vos propres appareils. Si celle-ci est dans le cache, vérifier l&apos;un de vos appareils le marquera vérifié pour tous les autres appareils et utilisateurs qui vous ont vérifié.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Clé de secours</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation type="unfinished">La clé utilisée pour vérifier d&apos;autres utilisateurs. Si celle-ci est dans le cache, vérifier un utilisateur vérifiera tous ses appareils.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation>La clé utilisée pour déchiffrer les sauvegardes de clé stockées en ligne. Si celle-ci est dans le cache, vous pouvez activer la sauvegarde de vos clés en ligne afin d&apos;en conserver une copie chiffrée en toute sécurité sur le serveur.</translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation type="unfinished">Votre clé la plus importante. Vous n&apos;avez pas besoin de la conserver dans le cache, car ne pas la conserver rend son vol plus difficile, et celle-ci n&apos;est nécessaire qu&apos;afin de renouveler vos autres clés de signature.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
-        <translation>Sélectionnez un fichier</translation>
+        <translation type="unfinished">Sélectionnez un fichier</translation>
     </message>
     <message>
         <location line="+0"/>
         <source>All Files (*)</source>
-        <translation>Tous les types de fichiers (*)</translation>
+        <translation type="unfinished">Tous les types de fichiers (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Ouvrir le fichier de sessions</translation>
+        <translation type="unfinished">Ouvrir le fichier de sessions</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Erreur</translation>
+        <translation type="unfinished">Erreur</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Mot de passe du fichier</translation>
+        <translation type="unfinished">Mot de passe du fichier</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Entrez la phrase de passe pour déchiffrer le fichier&#xa0;:</translation>
+        <translation type="unfinished">Entrez la phrase de passe pour déchiffrer le fichier&#xa0;:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>Le mot de passe ne peut être vide</translation>
+        <translation type="unfinished">Le mot de passe ne peut être vide</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Entrez une phrase de passe pour chiffrer vos clés de session&#xa0;:</translation>
+        <translation type="unfinished">Entrez une phrase de passe pour chiffrer vos clés de session&#xa0;:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>Fichier où sauvegarder les clés de session exportées</translation>
+        <translation type="unfinished">Fichier où sauvegarder les clés de session exportées</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>REQUÊTE</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>TÉLÉCHARGER</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>EN CACHE</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>PAS DANS LE CACHE</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPORTER</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>EXPORTER</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation>Aucune discussion privée chiffrée trouvée avec cet utilisateur. Créez-en une et réessayez.</translation>
     </message>
@@ -3176,7 +3343,7 @@ Cela met l&apos;application en évidence dans la barre des tâches.</translation
         <translation>Attente du correspondant…</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Attente que le correspondant accepte la demande de vérification.</translation>
     </message>
@@ -3191,7 +3358,7 @@ Cela met l&apos;application en évidence dans la barre des tâches.</translation
         <translation>Attente que le correspondant termine le processus de vérification.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Annuler</translation>
     </message>
@@ -3199,22 +3366,22 @@ Cela met l&apos;application en évidence dans la barre des tâches.</translation
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Bienvenue sur Nheko ! Le client de bureau pour le protocole Matrix.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Bon séjour !</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>S&apos;ENREGISTRER</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>CONNEXION</translation>
     </message>
@@ -3222,7 +3389,7 @@ Cela met l&apos;application en évidence dans la barre des tâches.</translation
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Hier</translation>
     </message>
diff --git a/resources/langs/nheko_hu.ts b/resources/langs/nheko_hu.ts
index a6ed99a06..02f0e0917 100644
--- a/resources/langs/nheko_hu.ts
+++ b/resources/langs/nheko_hu.ts
@@ -35,28 +35,10 @@
         <translation>Mikrofon némítása</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Várakozás megerősítésre</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Várakozás a másik oldalra a hitelesítés befejezéséhez.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Mégse</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -72,7 +54,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Videóhívás</translation>
     </message>
@@ -105,27 +87,27 @@
         <translation>Eszközök</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Elfogadás</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Ismeretlen mikrofon: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Ismeretlen kamera: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Elutasítás</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Nem található mikrofon.</translation>
     </message>
@@ -141,18 +123,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Nem sikerült meghívni a felhasználót: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>A felhasználó meg lett hívva: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>A gyorsítótár átvitele a jelenlegi verzióhoz nem sikerült. Ennek több oka is lehet. Kérlek, írj egy hibajelentést és egyelőre próbálj meg egy régebbi verziót használni! Alternatív megoldásként megprobálhatod eltávolítani a gyorsítótárat kézzel.</translation>
     </message>
@@ -193,7 +175,7 @@
         <translation>Biztos, hogy meg akarod hívni a következő felhasználót: %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Nem sikerült %1 meghívása a(z) %2 szobába: %3</translation>
     </message>
@@ -253,7 +235,7 @@
         <translation>Kitiltás feloldva a felhasználónak: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Biztosan privát csevegést akarsz indítani %1 felhasználóval?</translation>
     </message>
@@ -316,10 +298,15 @@
         <translation>Nem sikerült elhagyni a szobát: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Nem sikerült kirúgni %1 felhasználót %2 szobából: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -395,7 +382,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Titkos tároló feloldása</translation>
     </message>
@@ -428,12 +415,12 @@
         <translation>HItelesítési kód</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Kérlek, ellenőrizd a következő számjegyeket. Mindkét oldalon ugyanazoknak a számoknak kell szerepelniük. Ha nem ugyanazok, kérlek, válaszd azt, hogy „Nem egyeznek!” a hitelesítés megszakításához!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Nem egyeznek!</translation>
     </message>
@@ -446,7 +433,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Alkalmaz</translation>
     </message>
@@ -474,7 +461,7 @@
         <translation>Keresés</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Emberek</translation>
     </message>
@@ -522,12 +509,12 @@
         <translation>Ellenőrzési kód</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Kérlek, ellenőrizd a következő hangulatjeleket. Mindkét oldalon ugyanazoknak a hangulatjeleknek kell szerepelniük. Ha nem ugyanazok, kérlek, válaszd azt, hogy „Nem egyeznek!” a hitelesítés megszakításához!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>Nem egyeznek!</translation>
     </message>
@@ -540,7 +527,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -611,7 +598,7 @@
         <translation>A hitelesítés nem sikerült</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>A másik kliens nem támogatja a hitelesítési protokollunkat.</translation>
     </message>
@@ -641,7 +628,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Bezárás</translation>
     </message>
@@ -649,15 +636,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -697,34 +741,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -734,7 +778,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -767,7 +811,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -802,7 +846,7 @@
         <translation type="unfinished">Szerkesztés</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished">Bezárás</translation>
     </message>
@@ -820,7 +864,7 @@
         <translation>Minden fájl (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Nem sikerült feltölteni a médiafájlt. Kérlek, próbáld újra!</translation>
     </message>
@@ -833,7 +877,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished">Meghívandó felhasználó azonosítója</translation>
     </message>
@@ -867,7 +911,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished">Szoba azonosítója vagy álneve</translation>
     </message>
@@ -888,17 +932,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Matrixazonosító</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>pl. @janos:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -919,7 +963,7 @@ Ha a Nheko nem tud rátalálni a homeszerveredre, meg fog jelenni egy mező, aho
         <translation>A jelszavad.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Eszköznév</translation>
     </message>
@@ -929,7 +973,7 @@ Ha a Nheko nem tud rátalálni a homeszerveredre, meg fog jelenni egy mező, aho
         <translation>Egy név ennek az eszköznek, amely meg fog jelenni mások számára, amikor hitelesíted az eszközeidet. Ha nincs megadva semmi, egy alapértelmezett név lesz használva.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Homeszerver címe</translation>
     </message>
@@ -939,27 +983,32 @@ Ha a Nheko nem tud rátalálni a homeszerveredre, meg fog jelenni egy mező, aho
         <translation>szerver.em:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>A cím, melyen keresztül el lehet érni a homeszervered kliens API-jét.
 Példa: https://szerver.em:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>BEJELENTKEZÉS</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Érvénytelen Matrixazonosítót adtál meg. Példa: @janos:matrix.org</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Az automatikus felderítés nem sikerült. Helytelen válasz érkezett.</translation>
     </message>
@@ -969,7 +1018,7 @@ Példa: https://szerver.em:8787</translation>
         <translation>Az automatikus felderítés nem sikerült. Ismeretlen hiba a .well-known lekérése közben.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Nem találhatók szükséges végpontok. Lehet, hogy nem egy Matrixszerver.</translation>
     </message>
@@ -984,17 +1033,17 @@ Példa: https://szerver.em:8787</translation>
         <translation>Egy ismeretlen hiba történt. Ellenőrizd, hogy a homeszervered domainje helyes.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>SSO BEJELENTKEZÉS</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Üres jelszó</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>SSO bejelentkezés nem sikerült</translation>
     </message>
@@ -1020,62 +1069,67 @@ Példa: https://szerver.em:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+192"/>
-        <source>Encryption enabled</source>
-        <translation>Titkosítás bekapcsolva</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>a szoba neve megváltoztatva erre: %1</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>szobanév eltávolítva</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>a téma megváltoztatva erre: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>téma eltávolítva</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 létrehozta és beállította a következő szobát: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 hanghívást kezdeményezett.</translation>
     </message>
@@ -1090,27 +1144,22 @@ Példa: https://szerver.em:8787</translation>
         <translation>%1 hívást kezdeményezett.</translation>
     </message>
     <message>
-        <location line="+38"/>
-        <source>Negotiating call...</source>
-        <translation>Hívás előkészítése…</translation>
+        <location line="+41"/>
+        <source>%1 is negotiating the call...</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-95"/>
+        <location line="-102"/>
         <source>%1 answered the call.</source>
         <translation>%1 fogadta a hívást.</translation>
     </message>
     <message>
-        <location line="-148"/>
-        <source>removed</source>
-        <translation>eltávolítva</translation>
-    </message>
-    <message>
-        <location line="+160"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 befejezte a hívást.</translation>
     </message>
@@ -1118,7 +1167,7 @@ Példa: https://szerver.em:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Hívás befejezése</translation>
     </message>
@@ -1128,17 +1177,17 @@ Példa: https://szerver.em:8787</translation>
         <translation>Hívás kezdeményezése</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Fájl küldése</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Írj egy üzenetet…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1161,7 +1210,7 @@ Példa: https://szerver.em:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Szerkesztés</translation>
     </message>
@@ -1181,19 +1230,19 @@ Példa: https://szerver.em:8787</translation>
         <translation>Műveletek</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1228,7 +1277,7 @@ Példa: https://szerver.em:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1281,7 +1330,7 @@ Példa: https://szerver.em:8787</translation>
         <translation>Hitelesítési kérés érkezett</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1311,7 +1360,7 @@ Példa: https://szerver.em:8787</translation>
         <translation>Az eszközöd (%1) hitelesítést kért.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Mégse</translation>
     </message>
@@ -1384,7 +1433,7 @@ Példa: https://szerver.em:8787</translation>
         <translation>Nem található mikrofon.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Hang</translation>
     </message>
@@ -1399,7 +1448,7 @@ Példa: https://szerver.em:8787</translation>
         <translation>Képernyő</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Mégse</translation>
     </message>
@@ -1415,7 +1464,7 @@ Példa: https://szerver.em:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Egy egyedi profil létrehozása, amellyel be tudsz jelentkezni egyszerre több fiókon keresztül és a Nheko több példányát is tudod futtatni.</translation>
     </message>
@@ -1433,7 +1482,7 @@ Példa: https://szerver.em:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished">Olvasási jegyek</translation>
     </message>
@@ -1449,63 +1498,88 @@ Példa: https://szerver.em:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Felhasználónév</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>A felhasználónév nem lehet üres és csak a következő karaktereket tartalmazhatja: a-z, 0-9, ., _, =, - és /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Jelszó</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Kérlek, válassz egy biztonságos jelszót! A jelszó erősségéről szóló pontos követelmények a szerveredtől függhetnek.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Jelszó megerősítése</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Homeszerver</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Egy szerver, amelyen engedélyezve vannak a regisztrációk. Mivel a Matrix decentralizált, először találnod kell egy szervert, ahol regisztrálhatsz, vagy be kell állítanod a saját szervered.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Eszköznév</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished">Egy név ennek az eszköznek, amely meg fog jelenni mások számára, amikor hitelesíted az eszközeidet. Ha nincs megadva semmi, egy alapértelmezett név lesz használva.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>REGISZTRÁCIÓ</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished">Az automatikus felderítés nem sikerült. Helytelen válasz érkezett.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished">Az automatikus felderítés nem sikerült. Ismeretlen hiba a .well-known lekérése közben.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished">Nem találhatók szükséges végpontok. Lehet, hogy nem egy Matrixszerver.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished">Helytelen válasz érkezett. Ellenőrizd, hogy a homeszervered domainje helyes.</translation>
     </message>
@@ -1515,25 +1589,35 @@ Példa: https://szerver.em:8787</translation>
         <translation type="unfinished">Egy ismeretlen hiba történt. Ellenőrizd, hogy a homeszervered domainje helyes.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>A jelszó nem elég hosszú (legalább 8 karakter)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>A jelszavak nem egyeznek</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Nem megfelelő szervernév</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Bezárás</translation>
     </message>
@@ -1546,17 +1630,17 @@ Példa: https://szerver.em:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1564,7 +1648,7 @@ Példa: https://szerver.em:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>nincs tárolva verzió</translation>
     </message>
@@ -1612,7 +1696,7 @@ Példa: https://szerver.em:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1632,7 +1716,7 @@ Példa: https://szerver.em:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished">Kijelentkezés</translation>
     </message>
@@ -1660,7 +1744,7 @@ Példa: https://szerver.em:8787</translation>
         <translation type="unfinished">Bezárás</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished">Új csevegés indítása</translation>
     </message>
@@ -1680,7 +1764,12 @@ Példa: https://szerver.em:8787</translation>
         <translation type="unfinished">Szobák jegyzéke</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished">Felhasználói beállítások</translation>
     </message>
@@ -1693,7 +1782,7 @@ Példa: https://szerver.em:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1729,12 +1818,12 @@ Példa: https://szerver.em:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation>Szobabeállítások</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1826,6 +1915,21 @@ Példa: https://szerver.em:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1876,7 +1980,7 @@ Példa: https://szerver.em:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1886,7 +1990,7 @@ Példa: https://szerver.em:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1894,7 +1998,7 @@ Példa: https://szerver.em:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1976,7 +2080,7 @@ Példa: https://szerver.em:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2134,12 +2238,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation>Sikeres hitelesítés</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>A hitelesítés sikeres! Mindkét oldal hitelesítette az eszközeit!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Bezárás</translation>
     </message>
@@ -2147,7 +2251,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Az üzenet visszavonása nem sikerült: %1</translation>
@@ -2263,12 +2367,27 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 meg lett hívva.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 megváltoztatta a profilképét.</translation>
     </message>
@@ -2293,32 +2412,12 @@ Reason: %4</source>
         <translation>%1 elutasította a meghívását.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Meghívás elutasítva a(z) %1 szobába.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 elhagyta a szobát.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>%1 ki lett rúgva.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>%1 tiltása vissza lett vonva.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 ki lett tiltva.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2328,12 +2427,17 @@ Reason: %4</source>
         <translation>%1 visszavonta a kopogását.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Csatlakoztál ehhez a szobához.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2343,18 +2447,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Kopogás elutasítva tőle: %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 távozott, miután már egyszer távozott!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 kopogott.</translation>
     </message>
@@ -2362,7 +2466,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Szerkesztve</translation>
     </message>
@@ -2408,17 +2512,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Vissza a szobák listájára</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Nincs kiválasztva szoba</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2476,7 +2580,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Mutat</translation>
     </message>
@@ -2489,7 +2593,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2514,7 +2618,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Globális felhasználói profil</translation>
     </message>
@@ -2524,7 +2628,7 @@ Reason: %4</source>
         <translation>Szobai felhasználói profil</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2534,7 +2638,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2554,7 +2658,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2638,524 +2742,587 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>Alapértelmezett</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
     <message>
-        <location line="+579"/>
-        <source>Minimize to tray</source>
-        <translation>Kicsinyítés a tálcára</translation>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Téma</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start in tray</source>
-        <translation>Indítás a tálcán</translation>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Nagyítási tényező</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <source>Group&apos;s sidebar</source>
-        <translation>Csoport oldalsávja</translation>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Üzenetek kiemelése, ha az egérmutató rajtuk van</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Kerekített profilképek</translation>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Hatalmas hangulatjelek az idővonalon</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>profil: %1</translation>
+        <location line="+2"/>
+        <source>Minimize to tray</source>
+        <translation type="unfinished">Kicsinyítés a tálcára</translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>Alapértelmezett</translation>
+        <location line="+2"/>
+        <source>Start in tray</source>
+        <translation type="unfinished">Indítás a tálcán</translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>HÍVÁSOK</translation>
+        <location line="+2"/>
+        <source>Group&apos;s sidebar</source>
+        <translation type="unfinished">Csoport oldalsávja</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation>Keresztaláírási kulcsok</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Üzenetek küldése Markdownként</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>LEKÉRÉS</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>LETÖLTÉS</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Az alkalmazás azután is a háttérben fut, miután be lett zárva a főablak.</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Induljon az alkalmazás a háttérben, a főablak mutatása nélkül.</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Gépelési értesítések</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>A profilképek megjelenése a csevegésekben.
-KI - szögletes, BE - kerek.</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Szobák sorrendje olvasatlan üzenetek alapján</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Gombok mutatása az idővonalban</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Csoportok és címkék megjelenítése a szobák listája mellett egy oszlopban.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation type="unfinished">Az idővonal szélességének korlátozása</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Titkosított üzenetek mutatása az oldalsávban</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Olvasási jegyek</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Legyenek feloldva az oldalsávban megjelenő üzenetek.
-Csak a titkosított csevegések üzeneteire vonatkozik.</translation>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Asztali értesítések</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Privacy Screen</source>
-        <translation>Idővonal automatikus kitakarása</translation>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Riasztás értesítéskor</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation>Amikor az ablak elveszíti a fókuszt,
-az idővonal homályosítva lesz.</translation>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Kerekített profilképek</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
-        <translation>Idővonal kitakarása ennyi idő után (másodpercben, 0 és 3600 között)</translation>
+        <location line="+2"/>
+        <source>Use identicons</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation>Add meg, hány másodperc elteltével homályosuljon el az idővonal,
-miután az ablak elveszíti a fókuszt!
-Ha azonnal el legyen homályosítva fókuszvesztéskor, állítsd
-0-ra! A maximális érték 1 óra (3600 másodperc).</translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation type="unfinished">Titkosított üzenetek mutatása az oldalsávban</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Gombok mutatása az idővonalban</translation>
+        <location line="+2"/>
+        <source>Privacy Screen</source>
+        <translation type="unfinished">Idővonal automatikus kitakarása</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Gombok mutatása minden egyes üzenet mellett a gyors válaszhoz, reakcióhoz és egyéb műveletek eléréséhez.</translation>
+        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
+        <translation type="unfinished">Idővonal kitakarása ennyi idő után (másodpercben, 0 és 3600 között)</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Az idővonal szélességének korlátozása</translation>
+        <source>Touchscreen mode</source>
+        <translation type="unfinished">Érintő képernyős mód</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Az idővonalon megjelenő üzenetek maximális szélességének megadása (pixelben). Ez javíthatja az olvashatóságot, amikor a Nheko teljes méretben van széles képernyőkön.</translation>
+        <source>Font size</source>
+        <translation type="unfinished">Betűméret</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Gépelési értesítések</translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Betűtípus</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Legyen mutatva, hogy éppen ki gépel egy szobában.
-Ez be vagy ki is kapcsolja a gépelési értesítések küldését másoknak.</translation>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Hangulatjelek betűtípusa</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Szobák sorrendje olvasatlan üzenetek alapján</translation>
+        <location line="+2"/>
+        <source>Ringtone</source>
+        <translation type="unfinished">Csengőhang</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Az új üzeneteket tartalmazó szobák jelenjenek meg elöl.
-Ha ki van kapcsolva, a szobák sorrendje csak a bennük lévő utolsó üzenet dátuma alapján történik.
-Ha be van kapcsolva, azok a szobák kerülnek felülre, amelyekhez aktív értesítés tartozik (amelyet a számot tartalmazó kis kör jelez). A némított szobák továbbra is dátum alapján lesznek rendezve, mivel nem valószínű, hogy ezeket annyira fontosnak tartod, mint a többi szobát.</translation>
+        <source>Microphone</source>
+        <translation type="unfinished">Mikrofon</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Olvasási jegyek</translation>
+        <location line="+2"/>
+        <source>Camera</source>
+        <translation type="unfinished">Kamera</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Legyen mutatva, ha az üzenetedet elolvasták.
-Ez az állapot az üzenetek ideje mellett jelenik meg.</translation>
+        <source>Camera resolution</source>
+        <translation type="unfinished">Kamerafelbontás</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Üzenetek küldése Markdownként</translation>
+        <location line="+2"/>
+        <source>Camera frame rate</source>
+        <translation type="unfinished">Kamera képkockasebessége</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>A Markdown használatának engedélyezése az üzenetekben.
-Ha ki van kapcsolva, az összes üzenet sima szövegként lesz elküldve.</translation>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished">Tartalék hívássegéd szerver engedélyezése</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Send encrypted messages to verified users only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Asztali értesítések</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished">Kulcsok megosztása hitelesített felhasználókkal és eszközökkel</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Értesítések az érkezett üzenetekről, amikor a főablak éppen nincs fókuszban.</translation>
+        <source>Online Key Backup</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Riasztás értesítéskor</translation>
+        <location line="+2"/>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Riasztás megjelenítése, ha üzenet érkezett.
-Ettől általában animálttá válik az alkalmazásablakok listáján szereplő ikon.</translation>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Üzenetek kiemelése, ha az egérmutató rajtuk van</translation>
+        <source>Accesstoken</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Az üzenetek háttérszínének megváltoztatása, ha az egérmutatót föléjük viszed.</translation>
+        <source>Device ID</source>
+        <translation type="unfinished">Eszközazonosító</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Hatalmas hangulatjelek az idővonalon</translation>
+        <location line="+2"/>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Eszközujjlenyomat</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>A betűméret megnövelése, ha az üzenetek csak néhány hangulatjelet tartalmaznak.</translation>
+        <source>Homeserver</source>
+        <translation type="unfinished">Homeszerver</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>Platform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Kulcsok megosztása hitelesített felhasználókkal és eszközökkel</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">ÁLTALÁNOS</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <source>TIMELINE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
+        <source>SIDEBAR</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>TRAY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>CALLS</source>
+        <translation type="unfinished">HÍVÁSOK</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>GYORSÍTÓTÁRAZVA</translation>
+        <location line="+2"/>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">TITKOSÍTÁS</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>NINCS GYORSÍTÓTÁRAZVA</translation>
+        <location line="+2"/>
+        <source>INFO</source>
+        <translation type="unfinished">INFÓ</translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Nagyítási tényező</translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation type="unfinished">Munkamenetkulcsok</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Az egész felhasználói felület méretének szorzótényezője.</translation>
+        <source>Cross Signing Secrets</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Betűméret</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Betűtípus</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation type="unfinished">Önaláírókulcs</translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Téma</translation>
+        <location line="+2"/>
+        <source>User signing key</source>
+        <translation type="unfinished">Felhasználói aláírókulcs</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Csengőhang</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation type="unfinished">Mester-aláírókulcs</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished">Alapértelmezett</translation>
+    </message>
+    <message>
+        <location line="+33"/>
         <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Az értesítőhang megadása, amely akkor szól, ha hívás érkezik</translation>
+        <translation type="unfinished">Az értesítőhang megadása, amely akkor szól, ha hívás érkezik</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Mikrofon</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished">Az idővonalon megjelenő üzenetek maximális szélességének megadása (pixelben). Ez javíthatja az olvashatóságot, amikor a Nheko teljes méretben van széles képernyőkön.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Kamera</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished">Add meg, hány másodperc elteltével homályosuljon el az idővonal,
+miután az ablak elveszíti a fókuszt!
+Ha azonnal el legyen homályosítva fókuszvesztéskor, állítsd
+0-ra! A maximális érték 1 óra (3600 másodperc).</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Kamerafelbontás</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Az üzenetek háttérszínének megváltoztatása, ha az egérmutatót föléjük viszed.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Kamera képkockasebessége</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">A betűméret megnövelése, ha az üzenetek csak néhány hangulatjelet tartalmaznak.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Tartalék hívássegéd szerver engedélyezése</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation type="unfinished">Az alkalmazás azután is a háttérben fut, miután be lett zárva a főablak.</translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation type="unfinished">Induljon az alkalmazás a háttérben, a főablak mutatása nélkül.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>A turn.matrix.org lesz használva segédnek, ha a homeszerverednek nincs ilyenje.</translation>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation type="unfinished">Csoportok és címkék megjelenítése a szobák listája mellett egy oszlopban.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">A Markdown használatának engedélyezése az üzenetekben.
+Ha ki van kapcsolva, az összes üzenet sima szövegként lesz elküldve.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>Eszközazonosító</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Eszközujjlenyomat</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Munkamenetkulcsok</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished">Legyen mutatva, hogy éppen ki gépel egy szobában.
+Ez be vagy ki is kapcsolja a gépelési értesítések küldését másoknak.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPORTÁLÁS</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished">Az új üzeneteket tartalmazó szobák jelenjenek meg elöl.
+Ha ki van kapcsolva, a szobák sorrendje csak a bennük lévő utolsó üzenet dátuma alapján történik.
+Ha be van kapcsolva, azok a szobák kerülnek felülre, amelyekhez aktív értesítés tartozik (amelyet a számot tartalmazó kis kör jelez). A némított szobák továbbra is dátum alapján lesznek rendezve, mivel nem valószínű, hogy ezeket annyira fontosnak tartod, mint a többi szobát.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>EXPORTÁLÁS</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished">Gombok mutatása minden egyes üzenet mellett a gyors válaszhoz, reakcióhoz és egyéb műveletek eléréséhez.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>TITKOSÍTÁS</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Legyen mutatva, ha az üzenetedet elolvasták.
+Ez az állapot az üzenetek ideje mellett jelenik meg.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>ÁLTALÁNOS</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Értesítések az érkezett üzenetekről, amikor a főablak éppen nincs fókuszban.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Riasztás megjelenítése, ha üzenet érkezett.
+Ettől általában animálttá válik az alkalmazásablakok listáján szereplő ikon.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>FELÃœLET</translation>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished">A profilképek megjelenése a csevegésekben.
+KI - szögletes, BE - kerek.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation type="unfinished">Legyenek feloldva az oldalsávban megjelenő üzenetek.
+Csak a titkosított csevegések üzeneteire vonatkozik.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Érintő képernyős mód</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation type="unfinished">Amikor az ablak elveszíti a fókuszt,
+az idővonal homályosítva lesz.</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Will prevent text selection in the timeline to make touch scrolling easier.</source>
-        <translation>Letiltja a szövegkiemelést az idővonalban, hogy könyebb legyen érintéssel görgetni.</translation>
+        <translation type="unfinished">Letiltja a szövegkiemelést az idővonalban, hogy könyebb legyen érintéssel görgetni.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Hangulatjelek betűtípusa</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Az egész felhasználói felület méretének szorzótényezője.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Mester-aláírókulcs</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation type="unfinished">A turn.matrix.org lesz használva segédnek, ha a homeszerverednek nincs ilyenje.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>A legfontosabb kulcsod. Nem kell gyorsítótáraznod, mivel így kisebb az esélye, hogy ellopják, és csak arra van használva, hogy a többi aláíró kulcsaid váltakozva legyenek.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>Felhasználói aláírókulcs</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>A mások hitelesítésére használt kulcs. Ha gyorsítótárazva van, egy felhasználó hitelesítésekor hitelesítve lesz az összes eszköze.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation>Önaláírókulcs</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation type="unfinished">A kulcs, amellyel hozzáférhetsz a kulcsok online biztonsági mentéseihez. Ha gyorsítótárazva van, lehetőséged van biztonsági másolatként, titkosítva a szerveren tárolni a titkosítási kulcsokat.</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
-        <translation>A kulcs, amellyel hitelesítheted a saját eszközeidet. Ha gyorsítótárazva van, egy eszköz hitelesítése azt hitelesítettnek fogja megjelölni az összes többi eszközeidnek és azoknak a felhasználóidnak, akik már hitelesítettek téged.</translation>
+        <translation type="unfinished">A kulcs, amellyel hitelesítheted a saját eszközeidet. Ha gyorsítótárazva van, egy eszköz hitelesítése azt hitelesítettnek fogja megjelölni az összes többi eszközeidnek és azoknak a felhasználóidnak, akik már hitelesítettek téged.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Biztonsági mentési kulcs</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation type="unfinished">A mások hitelesítésére használt kulcs. Ha gyorsítótárazva van, egy felhasználó hitelesítésekor hitelesítve lesz az összes eszköze.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation>A kulcs, amellyel hozzáférhetsz a kulcsok online biztonsági mentéseihez. Ha gyorsítótárazva van, lehetőséged van biztonsági másolatként, titkosítva a szerveren tárolni a titkosítási kulcsokat.</translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation type="unfinished">A legfontosabb kulcsod. Nem kell gyorsítótáraznod, mivel így kisebb az esélye, hogy ellopják, és csak arra van használva, hogy a többi aláíró kulcsaid váltakozva legyenek.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
-        <translation>Fájl kiválasztása</translation>
+        <translation type="unfinished">Fájl kiválasztása</translation>
     </message>
     <message>
         <location line="+0"/>
         <source>All Files (*)</source>
-        <translation>Minden fájl (*)</translation>
+        <translation type="unfinished">Minden fájl (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Munkameneti fájl megnyitása</translation>
+        <translation type="unfinished">Munkameneti fájl megnyitása</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Hiba</translation>
+        <translation type="unfinished">Hiba</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Fájljelszó</translation>
+        <translation type="unfinished">Fájljelszó</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Írd be a jelmondatot a fájl titkosításának feloldásához:</translation>
+        <translation type="unfinished">Írd be a jelmondatot a fájl titkosításának feloldásához:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>A jelszó nem lehet üres</translation>
+        <translation type="unfinished">A jelszó nem lehet üres</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Írd be a jelmondatot a munkameneti kulcsok titkosításához:</translation>
+        <translation type="unfinished">Írd be a jelmondatot a munkameneti kulcsok titkosításához:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>Exportált munkameneti kulcsok mentése fájlba</translation>
+        <translation type="unfinished">Exportált munkameneti kulcsok mentése fájlba</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>LEKÉRÉS</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>LETÖLTÉS</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>GYORSÍTÓTÁRAZVA</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>NINCS GYORSÍTÓTÁRAZVA</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPORTÁLÁS</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>EXPORTÁLÁS</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished">Nem található titkosított privát csevegés ezzel a felhasználóval. Hozz létre egy titkosított privát csevegést vele, és próbáld újra!</translation>
     </message>
@@ -3168,7 +3335,7 @@ Ettől általában animálttá válik az alkalmazásablakok listáján szereplő
         <translation>Várakozás a másik félre…</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Várakozás a másik oldalra, hogy elfogadja a hitelesítési kérelmet.</translation>
     </message>
@@ -3183,7 +3350,7 @@ Ettől általában animálttá válik az alkalmazásablakok listáján szereplő
         <translation>Várakozás a másik oldalra a hitelesítés befejezéséhez.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Mégse</translation>
     </message>
@@ -3191,22 +3358,22 @@ Ettől általában animálttá válik az alkalmazásablakok listáján szereplő
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Üdvözöl a Nheko, egy asztali kliens a Matrix protokollhoz!</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Érezd jól magad nálunk!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>REGISZTRÁCIÓ</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>BEJELENTKEZÉS</translation>
     </message>
@@ -3214,7 +3381,7 @@ Ettől általában animálttá válik az alkalmazásablakok listáján szereplő
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Tegnap</translation>
     </message>
diff --git a/resources/langs/nheko_id.ts b/resources/langs/nheko_id.ts
index 935f5a4b2..898e799fa 100644
--- a/resources/langs/nheko_id.ts
+++ b/resources/langs/nheko_id.ts
@@ -35,28 +35,10 @@
         <translation>Bisukan Mikrofon</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Menunggu Konfirmasi</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Menunggu untuk pengguna yang lain untuk menyelesaikan verifikasi.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Batal</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation>
             <numerusform>%1 dan %n lainnya</numerusform>
@@ -72,7 +54,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Panggilan Video</translation>
     </message>
@@ -105,27 +87,27 @@
         <translation>Perangkat</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Terima</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Mikrofon tidak dikenal: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Kamera tidak dikenal: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Tolak</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Tidak ada mikrofon yang ditemukan.</translation>
     </message>
@@ -141,18 +123,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Gagal mengundang pengguna: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Pengguna yang diundang: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Migrasi cache ke versi saat ini gagal. Ini dapat memiliki alasan yang berbeda. Silakan buka masalah dan coba gunakan versi yang lebih lama untuk sementara. Alternatifnya Anda dapat mencoba menghapus cache secara manual.</translation>
     </message>
@@ -193,7 +175,7 @@
         <translation>Apakah Anda ingin menundang %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Gagal mengundang %1 ke %2: %3</translation>
     </message>
@@ -253,7 +235,7 @@
         <translation>Menghilangkan cekalan pengguna: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Apakah Anda ingin memulai chat privat dengan %1?</translation>
     </message>
@@ -316,10 +298,15 @@
         <translation>Gagal meninggalkan ruangan: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Gagal mengeluarkan %1 dari %2: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -395,7 +382,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Dekripsi rahasia</translation>
     </message>
@@ -428,12 +415,12 @@
         <translation>Kode Verifikasi</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Harap verifikasi digit berikut.  Anda seharusnya melihat angka yang sama di kedua sisi.  Jika mereka berbeda, mohon tekan &apos;Mereka tidak cocok!&apos; untuk membatalkan verifikasi!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Mereka tidak cocok!</translation>
     </message>
@@ -446,7 +433,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Terapkan</translation>
     </message>
@@ -474,7 +461,7 @@
         <translation>Cari</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Orang</translation>
     </message>
@@ -522,12 +509,12 @@
         <translation>Kode Verifikasi</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Mohon verifikasi emoji berikut. Anda seharusnya melihat emoji yang sama di kedua sisi. Jika mereka berbeda, mohon tekan &apos;Mereka tidak cocok!&apos; untuk membatalkan verifikasi!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>Mereka tidak cocok!</translation>
     </message>
@@ -540,7 +527,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation>Tidak ada kunci untuk mengakses pesan ini. Kami telah meminta untuk kunci secara otomatis, tetapi Anda dapat meminta lagi jika Anda tidak sabar.</translation>
     </message>
@@ -611,7 +598,7 @@
         <translation>Verifikasi gagal</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>Client yang lain tidak mendukung protokol verifikasi kami.</translation>
     </message>
@@ -641,7 +628,7 @@
         <translation>Kesalahan verifikasi yang tidak diketahui.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Tutup</translation>
     </message>
@@ -649,15 +636,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Teruskan Pesan</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished">Stiker</translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation>Mengedit paket gambar</translation>
     </message>
@@ -697,34 +741,34 @@
         <translation>Pilih gambar ikhtisar untuk paket</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation>Kunci keadaan</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation>Nama Paket</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation>Atribusi</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation>Gunakan sebagai Emoji</translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation>Gunakan sebagai Stiker</translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation>Kode Pendek</translation>
     </message>
@@ -734,7 +778,7 @@
         <translation>Body</translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation>Hapus dari paket</translation>
     </message>
@@ -767,7 +811,7 @@
         <translation>Buat paket untuk akun</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation>Paket ruangan baru</translation>
     </message>
@@ -802,7 +846,7 @@
         <translation>Edit</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation>Tutup</translation>
     </message>
@@ -820,7 +864,7 @@
         <translation>Semua File (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Gagal untuk mengunggah media. Silakan coba lagi.</translation>
     </message>
@@ -833,7 +877,7 @@
         <translation>Undang pengguna ke %1</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation>ID Pengguna untuk diundang</translation>
     </message>
@@ -867,7 +911,7 @@
         <translation>Gabung ruangan</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation>ID ruangan atau alias</translation>
     </message>
@@ -888,17 +932,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>ID Matrix</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>mis. @pengguna:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -919,7 +963,7 @@ Jika Nheko gagal menemukan homeserver Anda, Nheko akan menampilkan kolom untuk m
         <translation>Kata sandi Anda.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Nama perangkat</translation>
     </message>
@@ -929,7 +973,7 @@ Jika Nheko gagal menemukan homeserver Anda, Nheko akan menampilkan kolom untuk m
         <translation>Sebuah nama perangkat untuk perangkat ini, yang akan ditampilkan untuk yang lain, ketika memverifikasi perangkat Anda. Jika tidak dimasukkan nama perangkat yang default akan digunakan.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Alamat homeserver</translation>
     </message>
@@ -939,27 +983,32 @@ Jika Nheko gagal menemukan homeserver Anda, Nheko akan menampilkan kolom untuk m
         <translation>server.my:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>Alamat yang dapat digunakan untuk menghubungi API klien homeserver Anda.
 Misalnya: https://server.my:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>MASUK</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Anda telah memasukkan ID Matrix yang tidak valid  mis. @pengguna:matrix.org</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Penemuan otomatis gagal. Menerima respons cacat.</translation>
     </message>
@@ -969,7 +1018,7 @@ Misalnya: https://server.my:8787</translation>
         <translation>Penemuan otomatis gagal. Kesalahan yang tidak diketahu saat meminta .well-known.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Titik akhir yang dibutuhkan tidak dapat ditemukan. Kemungkinan bukan server Matrix.</translation>
     </message>
@@ -984,17 +1033,17 @@ Misalnya: https://server.my:8787</translation>
         <translation>Terjadi kesalahan yang tidak diketahui. Pastikan domain homeservernya valid.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>LOGIN SSO</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Kata sandi kosong</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>Login SSO gagal</translation>
     </message>
@@ -1020,62 +1069,67 @@ Misalnya: https://server.my:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+192"/>
-        <source>Encryption enabled</source>
-        <translation>Enkripsi diaktifkan</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>nama ruangan diganti ke: %1</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>nama ruangan dihapus</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>topik diganti ke: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>topik dihapus</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation>%1 mengubah avatar ruangan</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation>%1 mengubah pesan-pesan yang dipasangi pin.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation>%1 mengubah stiker dan emote untuk ruangan ini.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation>%1 mengubah alamat-alamat untuk ruangan ini.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation>%1 mengubah induk space untuk ruangan ini.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 membuat dan mengkonfigurasikan ruangan: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 melakukan panggilan suara.</translation>
     </message>
@@ -1090,27 +1144,22 @@ Misalnya: https://server.my:8787</translation>
         <translation>%1 melakukan panggilan.</translation>
     </message>
     <message>
-        <location line="+38"/>
-        <source>Negotiating call...</source>
-        <translation>Negosiasi panggilan…</translation>
+        <location line="+41"/>
+        <source>%1 is negotiating the call...</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation>Izinkan mereka untuk masuk</translation>
     </message>
     <message>
-        <location line="-95"/>
+        <location line="-102"/>
         <source>%1 answered the call.</source>
         <translation>%1 menjawab panggilan.</translation>
     </message>
     <message>
-        <location line="-148"/>
-        <source>removed</source>
-        <translation>dihapus</translation>
-    </message>
-    <message>
-        <location line="+160"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 mengakhir panggilan.</translation>
     </message>
@@ -1118,7 +1167,7 @@ Misalnya: https://server.my:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Tutup panggilan</translation>
     </message>
@@ -1128,17 +1177,17 @@ Misalnya: https://server.my:8787</translation>
         <translation>Lakukan panggilan</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Kirim sebuah file</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Ketik pesan…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation>Stiker</translation>
     </message>
@@ -1161,7 +1210,7 @@ Misalnya: https://server.my:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Edit</translation>
     </message>
@@ -1181,19 +1230,19 @@ Misalnya: https://server.my:8787</translation>
         <translation>Opsi</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation>&amp;Salin</translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation>Salin lokasi &amp;tautan</translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation>Re&amp;aksi</translation>
     </message>
@@ -1228,7 +1277,7 @@ Misalnya: https://server.my:8787</translation>
         <translation>&amp;Teruskan</translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation>&amp;Tandai sebagai dibaca</translation>
     </message>
@@ -1281,7 +1330,7 @@ Misalnya: https://server.my:8787</translation>
         <translation>Menerima Permintaan Verifikasi</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation>Untuk mengizinkan pengguna lain melihat  perangkat mana yang benar-benar milik Anda, Anda dapat memverifikasinya. Ini juga memungkinkan cadangan kunci bekerja secara otomatis. Verifikasi perangkat yang belum diverifikasi sekarang? (Pastikan Anda memiliki salah satu perangkat tersebut.)</translation>
     </message>
@@ -1311,7 +1360,7 @@ Misalnya: https://server.my:8787</translation>
         <translation>Perangkat Anda (%1) meminta untuk diverifikasi.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Batalkan</translation>
     </message>
@@ -1384,7 +1433,7 @@ Misalnya: https://server.my:8787</translation>
         <translation>Tidak ada mikrofon yang ditemukan.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Suara</translation>
     </message>
@@ -1399,7 +1448,7 @@ Misalnya: https://server.my:8787</translation>
         <translation>Layar</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Batalkan</translation>
     </message>
@@ -1415,7 +1464,7 @@ Misalnya: https://server.my:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Buat profil yang unik, yang mengizinkan Anda untuk masuk ke beberapa akun pada waktu bersamaan dan mulai beberapa instansi Nheko.</translation>
     </message>
@@ -1433,7 +1482,7 @@ Misalnya: https://server.my:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation>Laporan dibaca</translation>
     </message>
@@ -1449,63 +1498,88 @@ Misalnya: https://server.my:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Nama pengguna</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>Nama pengguna tidak boleh kosong, dan hanya mengandung karakter a-z, 0-9, ., _, =, -, dan /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Kata sandi</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Mohon memilih kata sandi yang aman. Persyaratan untuk kekuatan sandi mungkin bergantung pada server Anda.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Konfirmasi kata sandi</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Homeserver</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Sebuah server yang mengizinkan pendaftaran. Karena Matrix itu terdecentralisasi, Anda pertama harus mencari server yang Anda daftar atau host server Anda sendiri.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Nama perangkat</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished">Sebuah nama perangkat untuk perangkat ini, yang akan ditampilkan untuk yang lain, ketika memverifikasi perangkat Anda. Jika tidak dimasukkan nama perangkat yang default akan digunakan.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>DAFTAR</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Penemuan otomatis gagal. Menerima respons cacat.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation>Penemuan otomatis gagal. Terjadi kesalahan yang tidak diketahui saat meminta .well-known.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Titik akhir yang dibutuhkan tidak dapat ditemukan. Kemungkinan bukan server Matrix.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation>Menerima respons cacat. Pastikan domain homeservernya valid.</translation>
     </message>
@@ -1515,25 +1589,35 @@ Misalnya: https://server.my:8787</translation>
         <translation>Terjadi kesalahan yang tidak diketahui. Pastikan domain homeservernya valid.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Kata sandi kurang panjang (min. 8 karakter)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Kata sandi tidak cocok</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Nama server tidak valid</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Tutup</translation>
     </message>
@@ -1546,17 +1630,17 @@ Misalnya: https://server.my:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation>Temukan Ruangan Publik</translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation>Cari ruangan publik</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation>Pilih homeserver kustom</translation>
     </message>
@@ -1564,7 +1648,7 @@ Misalnya: https://server.my:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>tidak ada versi yang disimpan</translation>
     </message>
@@ -1612,7 +1696,7 @@ Misalnya: https://server.my:8787</translation>
         <translation>Membuat tanda baru…</translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation>Pesan Status</translation>
     </message>
@@ -1632,7 +1716,7 @@ Misalnya: https://server.my:8787</translation>
         <translation>Tetapkan pesan status</translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation>Keluar</translation>
     </message>
@@ -1660,7 +1744,7 @@ Misalnya: https://server.my:8787</translation>
         <translation>Tutup</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation>Mulai chat baru</translation>
     </message>
@@ -1680,7 +1764,12 @@ Misalnya: https://server.my:8787</translation>
         <translation>Direktori ruangan</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation>Pengaturan pengguna</translation>
     </message>
@@ -1693,7 +1782,7 @@ Misalnya: https://server.my:8787</translation>
         <translation>Anggota dari %1</translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation>
@@ -1729,12 +1818,12 @@ Misalnya: https://server.my:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation>Pengaturan Ruangan</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation>
             <numerusform>%n anggota</numerusform>
@@ -1826,6 +1915,21 @@ Misalnya: https://server.my:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation>Ubah paket apa yang diaktifkan, hapus paket atau buat yang baru</translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1876,7 +1980,7 @@ Misalnya: https://server.my:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation>Undangan tertunda.</translation>
     </message>
@@ -1886,7 +1990,7 @@ Misalnya: https://server.my:8787</translation>
         <translation>Menampilkan ruangan ini</translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation>Tidak ada tampilan yang tersedia</translation>
     </message>
@@ -1894,7 +1998,7 @@ Misalnya: https://server.my:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation>Mohon masukkan kata sandi login Anda untuk melanjutkan:</translation>
     </message>
@@ -1976,7 +2080,7 @@ Misalnya: https://server.my:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation>Gagal menghubungkan ke penyimpanan rahasia</translation>
     </message>
@@ -2136,12 +2240,12 @@ Jika Anda memilih verifikasi, Anda harus memiliki perangkat lain yang tersedia.
         <translation>Verifikasi Berhasil</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Verifikasi berhasil!  Kedua sisi telah memverifikasi perangkat mereka!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Tutup</translation>
     </message>
@@ -2149,7 +2253,7 @@ Jika Anda memilih verifikasi, Anda harus memiliki perangkat lain yang tersedia.
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Reaksi pesan gagal: %1</translation>
@@ -2266,12 +2370,27 @@ Reason: %4</source>
 Alasan: %4</translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 diundang.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 mengubah avatarnya.</translation>
     </message>
@@ -2296,32 +2415,12 @@ Alasan: %4</translation>
         <translation>%1 menolak undangannya.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Menghapus undangan ke %1.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 meninggalkan ruangan.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>%1 dikeluarkan.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>Cekalan %1 dihilangkan.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 telah dicekal.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation>Alasan: %1</translation>
     </message>
@@ -2331,12 +2430,17 @@ Alasan: %4</translation>
         <translation>%1 menolak ketukannya.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Anda bergabung ruangan ini.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation>%1 mengubah avatarnya dan ubah nama tampilannya ke %2.</translation>
     </message>
@@ -2346,18 +2450,18 @@ Alasan: %4</translation>
         <translation>%1 mengubah nama tampilannya ke %2.</translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Menolak ketukan dari %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 keluar setelah sudah keluar!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 mengetuk.</translation>
     </message>
@@ -2365,7 +2469,7 @@ Alasan: %4</translation>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Diedit</translation>
     </message>
@@ -2411,17 +2515,17 @@ Alasan: %4</translation>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Kembali ke daftar ruangan</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Tidak ada ruangan yang dipilih</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation>Ruangan ini tidak dienkripsi!</translation>
     </message>
@@ -2479,7 +2583,7 @@ Alasan: %4</translation>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Tampilkan</translation>
     </message>
@@ -2492,7 +2596,7 @@ Alasan: %4</translation>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation>Tidak ada alur pendaftaran yang tersedia!</translation>
     </message>
@@ -2517,7 +2621,7 @@ Alasan: %4</translation>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Profil Pengguna Global</translation>
     </message>
@@ -2527,7 +2631,7 @@ Alasan: %4</translation>
         <translation>Profil Pengguna di Ruangan</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation>Ubah avatar secara global.</translation>
     </message>
@@ -2537,7 +2641,7 @@ Alasan: %4</translation>
         <translation>Ubah avatar. Hanya diterapkan di ruangan ini.</translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation>Ubah nama tampilan secara global.</translation>
     </message>
@@ -2557,7 +2661,7 @@ Alasan: %4</translation>
         <translation>Ini adalah profile specifik ruangan. Nama pengguna dan avatar mungkin berbeda dari versi globalnya.</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation>Buka profil global untuk pengguna ini.</translation>
     </message>
@@ -2641,523 +2745,586 @@ Alasan: %4</translation>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>Default</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Tema</translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Faktor skala</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Highlight pesan saat kursor di atas pesan</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Emoji besar di linimasa</translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>Perkecil ke baki</translation>
+        <translation type="unfinished">Perkecil ke baki</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>Mulai di baki</translation>
+        <translation type="unfinished">Mulai di baki</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>Bilah samping grup</translation>
+        <translation type="unfinished">Bilah samping grup</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Avatar Bundar</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Kirim pesan sebagai Markdown</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>profil: %1</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>Default</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>PANGGILAN</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation type="unfinished">Mainkan gambar beranimasi hanya saat kursor diarahkan ke gambar</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation>Kunci Tanda Tangan Silang</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Notifikasi mengetik</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>MINTA</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Urutkan ruangan bedasarkan yang belum dibaca</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>UNDUH</translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Tampilkan tombol di linimasa</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Membiarkan aplikasi berjalan di latar belakang setelah menutup jendela klien.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation type="unfinished">Batasi lebar linimasa</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Mulai aplikasinya di latar belakang tanpa menunjukkan jendela kliennya.</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Laporan dibaca</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Ubah penampilan avatar pengguna di chat.
-MATI - persegi, NYALA - Lingkaran.</translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Notifikasi desktop</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation>Gunakan identikon</translation>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Beritahu saat ada notifikasi</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Menampilkan kolom yang berisi grup dan tanda di sebelah daftar ruangan.</translation>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Avatar Bundar</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Dekripsikan pesan di bilah samping</translation>
+        <location line="+2"/>
+        <source>Use identicons</source>
+        <translation type="unfinished">Gunakan identikon</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Dekripsi pesan yang ditampilkan di bilah samping.
-Hanya mempengaruhi pesan di chat terenkripsi.</translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation type="unfinished">Dekripsikan pesan di bilah samping</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Privacy Screen</source>
-        <translation>Layar Privasi</translation>
+        <translation type="unfinished">Layar Privasi</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation>Ketika jendela kehilangan fokus, linimasanya
-akan diburamkan.</translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
-        <translation>Waktu kehabisan layar privasi (dalam detik [0 - 3600])</translation>
+        <translation type="unfinished">Waktu kehabisan layar privasi (dalam detik [0 - 3600])</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation>Tetapkan waktu kehabisan (dalam detik) untuk berapa lama setelah jendela kehilangan
-fokus sebelum layarnya akan diburamkan.
-Tetapkan ke 0 untuk memburamkan secara langsung setelah kehilangan fokus. Nilai maksimum adalah 1 jam (3600 detik)</translation>
+        <source>Touchscreen mode</source>
+        <translation type="unfinished">Mode layar sentuh</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Tampilkan tombol di linimasa</translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation type="unfinished">Ukuran font</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Tampilkan tombol untuk membalas, merekasi, atau mengakses opsi tambahan di sebelah pesan dengan cepat.</translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Keluarga Font</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Batasi lebar linimasa</translation>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Keluarga Font Emoji</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Tetapkan lebar maksimum pesan di linimasa (dalam pixel). Ini bisa membantu keterbacaan di layar lebar, ketika Nheko dimaksimalkan.</translation>
+        <source>Ringtone</source>
+        <translation type="unfinished">Nada Dering</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Notifikasi mengetik</translation>
+        <source>Microphone</source>
+        <translation type="unfinished">Mikrofon</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Tampilkan siapa yang sedang mengetik dalam ruangan.
-Ini akan mengaktifkan atau menonaktifkan pengiriman pemberitahuan pengetikan ke yang lain.</translation>
+        <source>Camera</source>
+        <translation type="unfinished">Kamera</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Urutkan ruangan bedasarkan yang belum dibaca</translation>
+        <location line="+2"/>
+        <source>Camera resolution</source>
+        <translation type="unfinished">Resolusi kamera</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Menampilkan ruangan dengan pesan baru pertama.
-Jika ini dimatikan, daftar ruangan hanya diurutkan dari waktu pesan terakhir di ruangan.
-Jika ini dinyalakan, ruangan yang mempunyai notifikasi aktif (lingkaran kecil dengan nomor didalam) akan diurutkan di atas. Ruangan, yang dibisukan, masih diurutkan dari waktu, karena Anda tidak pertimangkan mereka sebagai penting dengan ruangan yang lain.</translation>
+        <source>Camera frame rate</source>
+        <translation type="unfinished">Frame rate kamera</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Laporan dibaca</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished">Izinkan panggilan menggunakan bantuan server sebagai cadangan</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Menampilkan jika pesan Anda telah dibaca.
-Status akan ditampilkan disebelah waktu menerima pesan.</translation>
+        <source>Send encrypted messages to verified users only</source>
+        <translation type="unfinished">Kirim pesan terenkripsi ke pengguna yang telah diverifikasi saja</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Kirim pesan sebagai Markdown</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished">Bagikan kunci dengan pengguna dan perangkat yang telah diverifikasi</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Memperbolehkan menggunakan Markdown di pesan.
-Ketika dinonaktifkan, semua pesan akan dikirim sebagai teks biasa.</translation>
+        <source>Online Key Backup</source>
+        <translation type="unfinished">Cadangan Kunci Online</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
-        <translation>Mainkan gambar beranimasi hanya saat kursor diarahkan ke gambar</translation>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Notifikasi desktop</translation>
+        <location line="+2"/>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Memberitahukan tentang pesan yang diterima ketika kliennya tidak difokuskan.</translation>
+        <source>Accesstoken</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Beritahu saat ada notifikasi</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">ID Perangkat</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Menampilkan pemberitahuan saat sebuah pesan diterima.
-Ini biasanya menyebabkan ikon aplikasi di bilah tugas untuk beranimasi.</translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Sidik Jari Perangkat</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Highlight pesan saat kursor di atas pesan</translation>
+        <source>Homeserver</source>
+        <translation type="unfinished">Homeserver</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Mengubah warna background pesan ketika kursor Anda di atas pesannya.</translation>
+        <source>Version</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Emoji besar di linimasa</translation>
+        <location line="+2"/>
+        <source>Platform</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Membuat ukuran font lebih besar jika pesan dengan beberapa emoji ditampilkan.</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">UMUM</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
-        <translation>Kirim pesan terenkripsi ke pengguna yang telah diverifikasi saja</translation>
+        <location line="+2"/>
+        <source>TIMELINE</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
-        <translation>Memerlukan pengguna diverifikasi untuk mengirim pesan terenkripsi ke pengguna. Ini meningkatkan keamanan tetapi membuat enkripsi ujung-ke-ujung lebih susah.</translation>
+        <source>SIDEBAR</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Bagikan kunci dengan pengguna dan perangkat yang telah diverifikasi</translation>
+        <source>TRAY</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation>Secara otomatis membalas ke permintaan kunci dari pengguna lain, jika mereka terverifikasi, bahkan jika perangkat itu seharusnya tidak mempunyai akses ke kunci itu secara lain.</translation>
+        <source>NOTIFICATIONS</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation>Cadangan Kunci Online</translation>
+        <source>CALLS</source>
+        <translation type="unfinished">PANGGILAN</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
-        <translation>Unduh kunci enkripsi pesan dari dan unggah ke cadangan kunci online terenkripsi.</translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">ENKRIPSI</translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
-        <translation>Aktifkan cadangan kunci online</translation>
+        <location line="+2"/>
+        <source>INFO</source>
+        <translation type="unfinished">INFO</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation>Pengembang Nheko merekomendasikan untuk tidak mengaktifkan pencadangan kunci online hingga pencadangan kunci online simetris tersedia. Tetap mengaktifkan?</translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation type="unfinished">Kunci Perangkat</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>DICACHE</translation>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>TIDAK DICACHE</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Faktor skala</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation type="unfinished">Kunci penandatanganan diri</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Mengubah faktor skala antarmuka pengguna.</translation>
+        <source>User signing key</source>
+        <translation type="unfinished">Kunci penandatanganan pengguna</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Ukuran font</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation type="unfinished">Kunci penandatanganan utama</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Keluarga Font</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished">Default</translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Tema</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation type="unfinished">Tetapkan suara notifikasi untuk dimainkan ketika ada panggilan</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Nada Dering</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished">Tetapkan lebar maksimum pesan di linimasa (dalam pixel). Ini bisa membantu keterbacaan di layar lebar, ketika Nheko dimaksimalkan.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Tetapkan suara notifikasi untuk dimainkan ketika ada panggilan</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished">Tetapkan waktu kehabisan (dalam detik) untuk berapa lama setelah jendela kehilangan
+fokus sebelum layarnya akan diburamkan.
+Tetapkan ke 0 untuk memburamkan secara langsung setelah kehilangan fokus. Nilai maksimum adalah 1 jam (3600 detik)</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Mikrofon</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Mengubah warna background pesan ketika kursor Anda di atas pesannya.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Kamera</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">Membuat ukuran font lebih besar jika pesan dengan beberapa emoji ditampilkan.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Resolusi kamera</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation type="unfinished">Membiarkan aplikasi berjalan di latar belakang setelah menutup jendela klien.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Frame rate kamera</translation>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation type="unfinished">Mulai aplikasinya di latar belakang tanpa menunjukkan jendela kliennya.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Izinkan panggilan menggunakan bantuan server sebagai cadangan</translation>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation type="unfinished">Menampilkan kolom yang berisi grup dan tanda di sebelah daftar ruangan.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>Akan menggunakan turn.matrix.org sebagai bantuan jika homeserver Anda tidak menawarkannya.</translation>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">Memperbolehkan menggunakan Markdown di pesan.
+Ketika dinonaktifkan, semua pesan akan dikirim sebagai teks biasa.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>ID Perangkat</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Sidik Jari Perangkat</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Kunci Perangkat</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished">Memainkan media seperti GIF atau WEBP ketika kursor di atas medianya.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished">Tampilkan siapa yang sedang mengetik dalam ruangan.
+Ini akan mengaktifkan atau menonaktifkan pengiriman pemberitahuan pengetikan ke yang lain.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPOR</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished">Menampilkan ruangan dengan pesan baru pertama.
+Jika ini dimatikan, daftar ruangan hanya diurutkan dari waktu pesan terakhir di ruangan.
+Jika ini dinyalakan, ruangan yang mempunyai notifikasi aktif (lingkaran kecil dengan nomor didalam) akan diurutkan di atas. Ruangan, yang dibisukan, masih diurutkan dari waktu, karena Anda tidak pertimangkan mereka sebagai penting dengan ruangan yang lain.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>EKSPOR</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished">Tampilkan tombol untuk membalas, merekasi, atau mengakses opsi tambahan di sebelah pesan dengan cepat.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>ENKRIPSI</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Menampilkan jika pesan Anda telah dibaca.
+Status akan ditampilkan disebelah waktu menerima pesan.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>UMUM</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Memberitahukan tentang pesan yang diterima ketika kliennya tidak difokuskan.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>ANTARMUKA</translation>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Menampilkan pemberitahuan saat sebuah pesan diterima.
+Ini biasanya menyebabkan ikon aplikasi di bilah tugas untuk beranimasi.</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished">Ubah penampilan avatar pengguna di chat.
+MATI - persegi, NYALA - Lingkaran.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
-        <translation>Tampilkan sebuah identikon daripada sebuah huruf ketika tidak ada avatar yang diatur.</translation>
+        <translation type="unfinished">Tampilkan sebuah identikon daripada sebuah huruf ketika tidak ada avatar yang diatur.</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation>Memainkan media seperti GIF atau WEBP ketika kursor di atas medianya.</translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation type="unfinished">Dekripsi pesan yang ditampilkan di bilah samping.
+Hanya mempengaruhi pesan di chat terenkripsi.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Mode layar sentuh</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation type="unfinished">Ketika jendela kehilangan fokus, linimasanya
+akan diburamkan.</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Will prevent text selection in the timeline to make touch scrolling easier.</source>
-        <translation>Akan mencegah seleksi teks di linimasi untuk membuat guliran mudah.</translation>
+        <translation type="unfinished">Akan mencegah seleksi teks di linimasi untuk membuat guliran mudah.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Keluarga Font Emoji</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Mengubah faktor skala antarmuka pengguna.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Kunci penandatanganan utama</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation type="unfinished">Akan menggunakan turn.matrix.org sebagai bantuan jika homeserver Anda tidak menawarkannya.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>Kunci Anda yang paling penting. Anda tidak perlu menyimpannya dalam cache, karena tidak menyimpannya akan memperkecil kemungkinannya untuk dicuri dan hanya diperlukan untuk memutar kunci penandatanganan Anda yang lain.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation type="unfinished">Memerlukan pengguna diverifikasi untuk mengirim pesan terenkripsi ke pengguna. Ini meningkatkan keamanan tetapi membuat enkripsi ujung-ke-ujung lebih susah.</translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>Kunci penandatanganan pengguna</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation type="unfinished">Secara otomatis membalas ke permintaan kunci dari pengguna lain, jika mereka terverifikasi, bahkan jika perangkat itu seharusnya tidak mempunyai akses ke kunci itu secara lain.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>Kunci untuk memverifikasi pengguna lain. Jika dicache, memverifikasi sebuah pengguna akan memverifikasi semua perangkat mereka.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation type="unfinished">Unduh kunci enkripsi pesan dari dan unggah ke cadangan kunci online terenkripsi.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation>Kunci penandatanganan diri</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation type="unfinished">Kunci untuk mendekripsikan cadangan kunci online. Jika dicache, Anda dapat mengaktifkan kunci cadangan online untuk menyimpan kunci enkripsi yang dienkripsi secara aman di servernya.</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
-        <translation>Kunci untuk memverifikasi perangkat Anda. Jika dicache, memverifikasi salah satu perangkat Anda akan menandainya sebagai terverifikasi untuk semua perangkat Anda yang lain dan untuk pengguna yang telah memverifikasi Anda.</translation>
+        <translation type="unfinished">Kunci untuk memverifikasi perangkat Anda. Jika dicache, memverifikasi salah satu perangkat Anda akan menandainya sebagai terverifikasi untuk semua perangkat Anda yang lain dan untuk pengguna yang telah memverifikasi Anda.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Kunci cadangan</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation type="unfinished">Kunci untuk memverifikasi pengguna lain. Jika dicache, memverifikasi sebuah pengguna akan memverifikasi semua perangkat mereka.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation>Kunci untuk mendekripsikan cadangan kunci online. Jika dicache, Anda dapat mengaktifkan kunci cadangan online untuk menyimpan kunci enkripsi yang dienkripsi secara aman di servernya.</translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation type="unfinished">Kunci Anda yang paling penting. Anda tidak perlu menyimpannya dalam cache, karena tidak menyimpannya akan memperkecil kemungkinannya untuk dicuri dan hanya diperlukan untuk memutar kunci penandatanganan Anda yang lain.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
-        <translation>Pilih sebuah file</translation>
+        <translation type="unfinished">Pilih sebuah file</translation>
     </message>
     <message>
         <location line="+0"/>
         <source>All Files (*)</source>
-        <translation>Semua File (*)</translation>
+        <translation type="unfinished">Semua File (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Buka File Sesi</translation>
+        <translation type="unfinished">Buka File Sesi</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Kesalahan</translation>
+        <translation type="unfinished">Kesalahan</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Kata Sandi File</translation>
+        <translation type="unfinished">Kata Sandi File</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Masukkan kata sandi untuk mendekripsi filenya:</translation>
+        <translation type="unfinished">Masukkan kata sandi untuk mendekripsi filenya:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>Kata sandi tidak boleh kosong</translation>
+        <translation type="unfinished">Kata sandi tidak boleh kosong</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Masukkan frasa sandi untuk mengenkripsikan kunci sesi Anda:</translation>
+        <translation type="unfinished">Masukkan frasa sandi untuk mengenkripsikan kunci sesi Anda:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>File untuk menyimpan kunci sesi yang telah diekspor</translation>
+        <translation type="unfinished">File untuk menyimpan kunci sesi yang telah diekspor</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>MINTA</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>UNDUH</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>DICACHE</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>TIDAK DICACHE</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPOR</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>EKSPOR</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation>Tidak ada chat privat terenkripsi ditemukan dengan pengguna ini. Buat sebuah chat privat terenkripsi dengan pengguna ini dan coba lagi.</translation>
     </message>
@@ -3170,7 +3337,7 @@ Ini biasanya menyebabkan ikon aplikasi di bilah tugas untuk beranimasi.</transla
         <translation>Menunggu untuk mengguna lain…</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Menunggu untuk pengguna yang lain untuk menerima permintaan verifikasi.</translation>
     </message>
@@ -3185,7 +3352,7 @@ Ini biasanya menyebabkan ikon aplikasi di bilah tugas untuk beranimasi.</transla
         <translation>Menunggu untuk pengguna lain untuk menyelesaikan proses verifikasi.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Batalkan</translation>
     </message>
@@ -3193,22 +3360,22 @@ Ini biasanya menyebabkan ikon aplikasi di bilah tugas untuk beranimasi.</transla
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Selamat datang di Nheko! Sebuah klien desktop untuk protokol Matrix.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Nikmati masa tinggal Anda di sini!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>DAFTAR</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>MASUK</translation>
     </message>
@@ -3216,7 +3383,7 @@ Ini biasanya menyebabkan ikon aplikasi di bilah tugas untuk beranimasi.</transla
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Kemarin</translation>
     </message>
diff --git a/resources/langs/nheko_it.ts b/resources/langs/nheko_it.ts
index 8964b510a..64f37e2f2 100644
--- a/resources/langs/nheko_it.ts
+++ b/resources/langs/nheko_it.ts
@@ -35,28 +35,10 @@
         <translation>Silenzia microfono</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>In attesa di conferma</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>In attesa della conferma dall&apos;altra parte per la verifica.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Annulla</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Chiamata video</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>Dispositivi</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Accetta</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Microfono sconosciuto: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Rifiuta</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Nessun microfono trovato.</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Impossibile invitare l&apos;utente: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Invitato utente: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Migrazione della cache alla versione corrente fallita. Questo può avere diverse cause. Per favore apri una issue e nel frattempo prova ad usare una versione più vecchia. In alternativa puoi provare a cancellare la cache manualmente.</translation>
     </message>
@@ -194,7 +176,7 @@
         <translation>Vuoi davvero inviare %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Impossibile invitare %1 a %2: %3</translation>
     </message>
@@ -254,7 +236,7 @@
         <translation>Rimosso il ban dall&apos;utente: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Sei sicuro di voler avviare una chat privata con %1?</translation>
     </message>
@@ -317,10 +299,15 @@
         <translation>Impossibile lasciare la stanza: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Fallita l&apos;espulsione di %1 da %2: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Decifra i segreti</translation>
     </message>
@@ -429,12 +416,12 @@
         <translation>Codice di verifica</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Verificare i seguenti numeri.  Dovresti vedere gli stessi numeri da entrambi i lati.  Se differiscono, premi &apos;Sono diversi!&apos; per annullare la verifica!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Non corrispondono!</translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Applica</translation>
     </message>
@@ -475,7 +462,7 @@
         <translation>Cerca</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Membri</translation>
     </message>
@@ -523,12 +510,12 @@
         <translation>Codice di Verifica</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Prego verificare le seguenti emoji. Dovresti vedere le stesse emoji su ambo i lati. Se sono diverse, premi &apos;Non Corrispondono!&apos; per annullare la verifica!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>Non corrispondono!</translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -612,7 +599,7 @@
         <translation>Verifica fallita</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -642,7 +629,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Chiudi</translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Inoltra Messaggio</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -698,34 +742,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -735,7 +779,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -768,7 +812,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -803,7 +847,7 @@
         <translation type="unfinished">Modifica</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished">Chiudi</translation>
     </message>
@@ -821,7 +865,7 @@
         <translation type="unfinished">Tutti i File (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished">Impossibile inviare il file multimediale. Per favore riprova.</translation>
     </message>
@@ -834,7 +878,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished">ID utente da invitare</translation>
     </message>
@@ -868,7 +912,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished">ID della stanza o alias</translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>ID Matrix</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>es. @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -920,7 +964,7 @@ Se Nheko non conclude la ricerca del tuo homeserver, ti mostrerà un campo in cu
         <translation>La tua password.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Nome del dispositivo</translation>
     </message>
@@ -930,7 +974,7 @@ Se Nheko non conclude la ricerca del tuo homeserver, ti mostrerà un campo in cu
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Indirizzo Homeserver</translation>
     </message>
@@ -940,27 +984,32 @@ Se Nheko non conclude la ricerca del tuo homeserver, ti mostrerà un campo in cu
         <translation>server.my:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>L&apos;indirizzo che può essere usato per contattare le API client del tuo homeserver.
 Esempio: https://server.mio:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>ACCEDI</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Hai inserito un ID Matrix non valido, es @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Ricerca automatica fallita. Ricevuta risposta malformata.</translation>
     </message>
@@ -970,7 +1019,7 @@ Esempio: https://server.mio:8787</translation>
         <translation>Ricerca automatica fallita. Errore ignoto durante la richiesta di .well-known.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Gli endpoint richiesti non sono stati trovati. Forse non è un server Matrix.</translation>
     </message>
@@ -985,17 +1034,17 @@ Esempio: https://server.mio:8787</translation>
         <translation>Avvenuto un errore sconosciuto. Assicurati che il dominio dell&apos;homeserver sia valido.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>ACCESSO SSO</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Password vuota</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>Accesso SSO fallito</translation>
     </message>
@@ -1021,67 +1070,67 @@ Esempio: https://server.mio:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
-        <translation>rimosso</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
-        <translation>Crittografia abilitata</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>nome della stanza cambiato in: %1</translation>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>nome della stanza rimosso</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>argomento cambiato in: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>argomento rimosso</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 creato e configurata stanza: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 ha avviato una chiamata audio.</translation>
     </message>
@@ -1096,22 +1145,22 @@ Esempio: https://server.mio:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation>%1 ha risposto alla chiamata.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 ha terminato la chiamata.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1119,7 +1168,7 @@ Esempio: https://server.mio:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Termina</translation>
     </message>
@@ -1129,17 +1178,17 @@ Esempio: https://server.mio:8787</translation>
         <translation>Avvia una chiamata</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation type="unfinished">Invia un file</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation type="unfinished">Scrivi un messaggio…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1162,7 +1211,7 @@ Esempio: https://server.mio:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Modifica</translation>
     </message>
@@ -1182,19 +1231,19 @@ Esempio: https://server.mio:8787</translation>
         <translation type="unfinished">Opzioni</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1229,7 +1278,7 @@ Esempio: https://server.mio:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1282,7 +1331,7 @@ Esempio: https://server.mio:8787</translation>
         <translation>Richiesta di verifica ricevuta</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1313,7 +1362,7 @@ Verificare %1 adesso?</translation>
         <translation>Il tuo dispositivo (%1) ha richiesto di essere verificato.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Annulla</translation>
     </message>
@@ -1386,7 +1435,7 @@ Verificare %1 adesso?</translation>
         <translation type="unfinished">Nessun microfono trovato.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1401,7 +1450,7 @@ Verificare %1 adesso?</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation type="unfinished">Annulla</translation>
     </message>
@@ -1417,7 +1466,7 @@ Verificare %1 adesso?</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1435,7 +1484,7 @@ Verificare %1 adesso?</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished">Ricevute di lettura</translation>
     </message>
@@ -1451,63 +1500,88 @@ Verificare %1 adesso?</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Nome utente</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>Il nome utente non deve essere vuoto e deve contenere solo i caratteri a-z, 0-9, ., _, =, -, e /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Password</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Per favore scegli una password sicura. I requisiti di robustezza della password potrebbero dipendere dal server.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Conferma della password</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Homeserver</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Un server che consente la registrazione. Siccome matrix è decentralizzata, devi prima trovare un server su cui registrarti o ospitarne uno tuo.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Nome del dispositivo</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>REGISTRATI</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished">Ricerca automatica fallita. Ricevuta risposta malformata.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished">Ricerca automatica fallita. Errore ignoto durante la richiesta di .well-known.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished">Gli endpoint richiesti non sono stati trovati. Forse non è un server Matrix.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished">Ricevuta risposta malformata. Assicurati che il dominio dell&apos;homeserver sia valido.</translation>
     </message>
@@ -1517,25 +1591,35 @@ Verificare %1 adesso?</translation>
         <translation type="unfinished">Avvenuto un errore sconosciuto. Assicurati che il dominio dell&apos;homeserver sia valido.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>La password non è abbastanza lunga (minimo 8 caratteri)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Le password non corrispondono</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Nome del server non valido</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Chiudi</translation>
     </message>
@@ -1548,17 +1632,17 @@ Verificare %1 adesso?</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1566,7 +1650,7 @@ Verificare %1 adesso?</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>nessuna versione memorizzata</translation>
     </message>
@@ -1614,7 +1698,7 @@ Verificare %1 adesso?</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1634,7 +1718,7 @@ Verificare %1 adesso?</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished">Disconnettiti</translation>
     </message>
@@ -1662,7 +1746,7 @@ Verificare %1 adesso?</translation>
         <translation type="unfinished">Chiudi</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished">Inizia una nuova discussione</translation>
     </message>
@@ -1682,7 +1766,12 @@ Verificare %1 adesso?</translation>
         <translation type="unfinished">Elenco delle stanze</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished">Impostazioni utente</translation>
     </message>
@@ -1695,7 +1784,7 @@ Verificare %1 adesso?</translation>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1732,12 +1821,12 @@ Verificare %1 adesso?</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1830,6 +1919,21 @@ Verificare %1 adesso?</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1880,7 +1984,7 @@ Verificare %1 adesso?</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1890,7 +1994,7 @@ Verificare %1 adesso?</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1898,7 +2002,7 @@ Verificare %1 adesso?</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1980,7 +2084,7 @@ Verificare %1 adesso?</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2138,12 +2242,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Chiudi</translation>
     </message>
@@ -2151,7 +2255,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Oscuramento del messaggio fallito: %1</translation>
@@ -2268,12 +2372,27 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 è stato invitato.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 ha cambiato il suo avatar.</translation>
     </message>
@@ -2298,32 +2417,12 @@ Reason: %4</source>
         <translation>%1 ha rifiutato il suo invito.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Revocato l&apos;invito a %1.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 ha lasciato la stanza.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>Scacciato %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>Rimosso ban da %1.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 è stato bannato.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2333,12 +2432,17 @@ Reason: %4</source>
         <translation>%1 ha oscurato la sua bussata.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Sei entrato in questa stanza.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2348,18 +2452,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Rifiutata la bussata di %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 è uscito dopo essere già uscito!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 ha bussato.</translation>
     </message>
@@ -2367,7 +2471,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2413,17 +2517,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2481,7 +2585,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Rivela</translation>
     </message>
@@ -2494,7 +2598,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2519,7 +2623,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2529,7 +2633,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2539,7 +2643,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2559,7 +2663,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2643,403 +2747,428 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
     <message>
-        <location line="+579"/>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Tema</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Fattore di scala</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Evidenzia il messaggio al passaggio del mouse</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>Minimizza nella tray</translation>
+        <translation type="unfinished">Minimizza nella tray</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>Avvia nella tray</translation>
+        <translation type="unfinished">Avvia nella tray</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>Barra laterale dei gruppi</translation>
+        <translation type="unfinished">Barra laterale dei gruppi</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Avatar Circolari</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Invia messaggi come Markdown</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Notifiche di scrittura</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Ordina stanze per non letti</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Mostra pulsanti nella timeline</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Ricevute di lettura</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Notifiche desktop</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
+        <location line="+2"/>
+        <source>Alert on notification</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Avatar Circolari</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Use identicons</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+2"/>
         <source>Decrypt messages in sidebar</source>
-        <translation>Decripta messaggi nella barra laterale</translation>
+        <translation type="unfinished">Decripta messaggi nella barra laterale</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
+        <source>Privacy Screen</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Privacy Screen</source>
+        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
+        <source>Touchscreen mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation type="unfinished">Dimensione dei caratteri</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation type="unfinished"></translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Famiglia dei caratteri</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Mostra pulsanti nella timeline</translation>
+        <location line="+2"/>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Famiglia dei caratteri delle Emoji</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <source>Ringtone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
+        <source>Microphone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <source>Camera</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Notifiche di scrittura</translation>
+        <source>Camera resolution</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
+        <source>Camera frame rate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Ordina stanze per non letti</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <source>Send encrypted messages to verified users only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Ricevute di lettura</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
+        <source>Online Key Backup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Invia messaggi come Markdown</translation>
+        <location line="+2"/>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
+        <source>User ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Accesstoken</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Notifiche desktop</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">ID Dispositivo</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation type="unfinished"></translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Impronta digitale del dispositivo</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
+        <location line="+2"/>
+        <source>Homeserver</source>
+        <translation type="unfinished">Homeserver</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <source>Platform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation type="unfinished">Evidenzia il messaggio al passaggio del mouse</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">GENERALE</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
+        <source>TIMELINE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
+        <location line="+2"/>
+        <source>SIDEBAR</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <source>TRAY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>CALLS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation type="unfinished"></translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">CRITTOGRAFIA</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <source>INFO</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation type="unfinished"></translation>
+        <source>Session Keys</source>
+        <translation type="unfinished">Chiavi di Sessione</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>Cross Signing Secrets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>Online backup key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
+        <location line="+2"/>
+        <source>Self signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
+        <location line="+2"/>
+        <source>User signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
+        <location line="+2"/>
+        <source>Master signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Fattore di scala</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Dimensione dei caratteri</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Famiglia dei caratteri</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Tema</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
+        <source>Keep the application running in the background after closing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
+        <location line="+2"/>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
+        <location line="+4"/>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Device ID</source>
-        <translation>ID Dispositivo</translation>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Impronta digitale del dispositivo</translation>
+        <location line="+4"/>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Chiavi di Sessione</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPORTA</translation>
-    </message>
-    <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>ESPORTA</translation>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>CRITTOGRAFIA</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>GENERALE</translation>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>INTERFACCIA</translation>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -3048,52 +3177,52 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Famiglia dei caratteri delle Emoji</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
         <translation type="unfinished">Seleziona un file</translation>
     </message>
@@ -3103,52 +3232,90 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished">Tutti i File (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Apri File delle Sessioni</translation>
+        <translation type="unfinished">Apri File delle Sessioni</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Errore</translation>
+        <translation type="unfinished">Errore</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Password del File</translation>
+        <translation type="unfinished">Password del File</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Inserisci la passphrase per decriptare il file:</translation>
+        <translation type="unfinished">Inserisci la passphrase per decriptare il file:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>La password non può essere vuota</translation>
+        <translation type="unfinished">La password non può essere vuota</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Inserisci la passphrase per criptare le tue chiavi di sessione:</translation>
+        <translation type="unfinished">Inserisci la passphrase per criptare le tue chiavi di sessione:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>File ove salvare le chiavi di sessione esportate</translation>
+        <translation type="unfinished">File ove salvare le chiavi di sessione esportate</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPORTA</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>ESPORTA</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3161,7 +3328,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3176,7 +3343,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Annulla</translation>
     </message>
@@ -3184,22 +3351,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Benvenuto su nheko! Il client desktop per il protocollo Matrix.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Goditi la permanenza!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>REGISTRATI</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>ACCEDI</translation>
     </message>
@@ -3207,7 +3374,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Ieri</translation>
     </message>
diff --git a/resources/langs/nheko_ja.ts b/resources/langs/nheko_ja.ts
index 1e653dfc2..253f3de33 100644
--- a/resources/langs/nheko_ja.ts
+++ b/resources/langs/nheko_ja.ts
@@ -35,28 +35,10 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation type="unfinished">キャンセル</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -72,7 +54,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation type="unfinished"></translation>
     </message>
@@ -105,27 +87,27 @@
         <translation type="unfinished">デバイス</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation type="unfinished">容認</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation type="unfinished">拒否</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -141,18 +123,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>ユーザーを招待できませんでした: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>招待されたユーザー: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -193,7 +175,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>%2に%1を招待できませんでした: %3</translation>
     </message>
@@ -253,7 +235,7 @@
         <translation>永久追放を解除されたユーザー: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -316,10 +298,15 @@
         <translation>部屋から出られませんでした: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -395,7 +382,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation type="unfinished"></translation>
     </message>
@@ -428,12 +415,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -446,7 +433,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>適用</translation>
     </message>
@@ -474,7 +461,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation type="unfinished"></translation>
     </message>
@@ -522,12 +509,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -540,7 +527,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -611,7 +598,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -641,7 +628,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation type="unfinished">閉じる</translation>
     </message>
@@ -649,15 +636,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -697,34 +741,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -734,7 +778,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -767,7 +811,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -802,7 +846,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished">閉じる</translation>
     </message>
@@ -820,7 +864,7 @@
         <translation type="unfinished">全てのファイル (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished">メディアをアップロードできませんでした。やり直して下さい。</translation>
     </message>
@@ -833,7 +877,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished">招待するユーザーのID</translation>
     </message>
@@ -867,7 +911,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished">部屋のID又は別名</translation>
     </message>
@@ -888,17 +932,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Matrix ID</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>例 @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -916,7 +960,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>デバイス名</translation>
     </message>
@@ -926,7 +970,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation type="unfinished"></translation>
     </message>
@@ -936,26 +980,31 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>ログイン</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>自動検出できませんでした。不正な形式の応答を受信しました。</translation>
     </message>
@@ -965,7 +1014,7 @@ Example: https://server.my:8787</source>
         <translation>自動検出できませんでした。.well-known要求時の不明なエラー。</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>必要な端点が見つかりません。Matrixサーバーではないかもしれません。</translation>
     </message>
@@ -980,17 +1029,17 @@ Example: https://server.my:8787</source>
         <translation>不明なエラーが発生しました。ホームサーバーのドメイン名が有効であるかを確認して下さい。</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>パスワードが入力されていません</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1016,67 +1065,67 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
-        <translation>暗号化が有効です</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>部屋名が変更されました: %1</translation>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>部屋名が削除されました</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>話題が変更されました: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>話題が削除されました</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1091,22 +1140,22 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1114,7 +1163,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1124,17 +1173,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation type="unfinished">ファイルを送信</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation type="unfinished">メッセージを書く...</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1157,7 +1206,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1177,19 +1226,19 @@ Example: https://server.my:8787</source>
         <translation type="unfinished">オプション</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1224,7 +1273,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1277,7 +1326,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1307,7 +1356,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation type="unfinished">キャンセル</translation>
     </message>
@@ -1380,7 +1429,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1395,7 +1444,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation type="unfinished">キャンセル</translation>
     </message>
@@ -1411,7 +1460,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1429,7 +1478,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished">開封確認</translation>
     </message>
@@ -1445,63 +1494,88 @@ Example: https://server.my:8787</source>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>ユーザー名</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>パスワード</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>パスワード確認</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">デバイス名</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>登録</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished">自動検出できませんでした。不正な形式の応答を受信しました。</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished">自動検出できませんでした。.well-known要求時の不明なエラー。</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished">必要な端点が見つかりません。Matrixサーバーではないかもしれません。</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished">不正な形式の応答を受信しました。ホームサーバーのドメイン名が有効であるかを確認して下さい。</translation>
     </message>
@@ -1511,25 +1585,35 @@ Example: https://server.my:8787</source>
         <translation type="unfinished">不明なエラーが発生しました。ホームサーバーのドメイン名が有効であるかを確認して下さい。</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>パスワード長が不足しています (最小8文字)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>パスワードが一致しません</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>無効なサーバー名です</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation type="unfinished">閉じる</translation>
     </message>
@@ -1542,17 +1626,17 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1560,7 +1644,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>バージョンが保存されていません</translation>
     </message>
@@ -1608,7 +1692,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1628,7 +1712,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished">ログアウト</translation>
     </message>
@@ -1656,7 +1740,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished">閉じる</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished">新しいチャットを開始</translation>
     </message>
@@ -1676,7 +1760,12 @@ Example: https://server.my:8787</source>
         <translation type="unfinished">部屋一覧</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished">ユーザー設定</translation>
     </message>
@@ -1689,7 +1778,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1725,12 +1814,12 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1822,6 +1911,21 @@ Example: https://server.my:8787</source>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1872,7 +1976,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1882,7 +1986,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1890,7 +1994,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1972,7 +2076,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2130,12 +2234,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation type="unfinished">閉じる</translation>
     </message>
@@ -2143,7 +2247,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>メッセージを編集できませんでした: %1</translation>
@@ -2259,12 +2363,27 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1が招待されました。</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1がアバターを変更しました。</translation>
     </message>
@@ -2289,32 +2408,12 @@ Reason: %4</source>
         <translation>%1が招待を拒否しました。</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>%1への招待を取り消しました。</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1は退室しました。</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>%1を一時的に追放しました。</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation type="unfinished">%1 の永久追放を解除しました。</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2324,12 +2423,17 @@ Reason: %4</source>
         <translation>%1がノックを編集しました。</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2339,18 +2443,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>%1からのノックを拒否しました。</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation type="unfinished">退出済みの%1が退出しました!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1がノックしました。</translation>
     </message>
@@ -2358,7 +2462,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2404,17 +2508,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2472,7 +2576,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>表示</translation>
     </message>
@@ -2485,7 +2589,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2510,7 +2614,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2520,7 +2624,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2530,7 +2634,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2550,7 +2654,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2634,99 +2738,117 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">テーマ</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">尺度係数</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>トレイへ最小化</translation>
+        <translation type="unfinished">トレイへ最小化</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>トレイで起動</translation>
+        <translation type="unfinished">トレイで起動</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>グループサイドバー</translation>
+        <translation type="unfinished">グループサイドバー</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>円形アバター</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">メッセージをMarkdownとして送信</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">入力状態の通知</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">開封確認</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">デスクトップ通知</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
+        <location line="+2"/>
+        <source>Alert on notification</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">円形アバター</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
+        <location line="+2"/>
+        <source>Use identicons</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
+        <source>Decrypt messages in sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -2736,301 +2858,308 @@ Only affects messages in encrypted chats.</source>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
+        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
+        <location line="+2"/>
+        <source>Touchscreen mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation type="unfinished"></translation>
+        <source>Font size</source>
+        <translation type="unfinished">フォントサイズ</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
+        <location line="+2"/>
+        <source>Font Family</source>
+        <translation type="unfinished">フォントファミリー</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Emoji Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <source>Ringtone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
+        <source>Microphone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <source>Camera</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>入力状態の通知</translation>
+        <source>Camera resolution</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
+        <source>Camera frame rate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <source>Send encrypted messages to verified users only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>開封確認</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
+        <source>Online Key Backup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>メッセージをMarkdownとして送信</translation>
+        <location line="+2"/>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
+        <source>User ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Accesstoken</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>デスクトップ通知</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">デバイスID</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation type="unfinished"></translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">デバイスの指紋</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
+        <location line="+2"/>
+        <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <source>Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
+        <source>Platform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation type="unfinished"></translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">全般</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
+        <location line="+2"/>
+        <source>TIMELINE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <source>SIDEBAR</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>TRAY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
+        <source>CALLS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation type="unfinished"></translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">暗号化</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
+        <source>INFO</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>Session Keys</source>
+        <translation type="unfinished">セッション鍵</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>Online backup key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
+        <location line="+2"/>
+        <source>Self signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
+        <location line="+2"/>
+        <source>User signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
+        <location line="+2"/>
+        <source>Master signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>尺度係数</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>フォントサイズ</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>フォントファミリー</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>テーマ</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
+        <source>Keep the application running in the background after closing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
+        <location line="+2"/>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
+        <location line="+4"/>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Device ID</source>
-        <translation>デバイスID</translation>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>デバイスの指紋</translation>
+        <location line="+4"/>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>セッション鍵</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>インポート</translation>
-    </message>
-    <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>エクスポート</translation>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>暗号化</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>全般</translation>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -3039,52 +3168,52 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
         <translation type="unfinished">ファイルを選択</translation>
     </message>
@@ -3094,52 +3223,90 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished">全てのファイル (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>セッションファイルを開く</translation>
+        <translation type="unfinished">セッションファイルを開く</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>エラー</translation>
+        <translation type="unfinished">エラー</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>ファイルのパスワード</translation>
+        <translation type="unfinished">ファイルのパスワード</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>ファイルを復号するためのパスフレーズを入力して下さい:</translation>
+        <translation type="unfinished">ファイルを復号するためのパスフレーズを入力して下さい:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>パスワードを空にはできません</translation>
+        <translation type="unfinished">パスワードを空にはできません</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>セッション鍵を暗号化するためのパスフレーズを入力して下さい:</translation>
+        <translation type="unfinished">セッション鍵を暗号化するためのパスフレーズを入力して下さい:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>エクスポートされたセッション鍵を保存するファイル</translation>
+        <translation type="unfinished">エクスポートされたセッション鍵を保存するファイル</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>インポート</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>エクスポート</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3152,7 +3319,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3167,7 +3334,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation type="unfinished">キャンセル</translation>
     </message>
@@ -3175,22 +3342,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Matrixプロトコルのデスクトップクライアント、nhekoへようこそ!</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>会話を楽しんで下さい!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>登録</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>ログイン</translation>
     </message>
@@ -3198,7 +3365,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>昨日</translation>
     </message>
diff --git a/resources/langs/nheko_ml.ts b/resources/langs/nheko_ml.ts
index 5d024d42d..87274c5dd 100644
--- a/resources/langs/nheko_ml.ts
+++ b/resources/langs/nheko_ml.ts
@@ -35,28 +35,10 @@
         <translation>മൈക്ക് നിശബ്ദമാക്കുക</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>സ്ഥിരീകരണത്തിനായി കാത്തിരിക്കുന്നു</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>റദ്ദാക്കു</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>വീഡിയോ കോൾ</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>ഉപകരണങ്ങൾ</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>സ്വീകരിക്കുക</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>അജ്ഞാത മൈക്രോഫോൺ:% 1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>അജ്ഞാത ക്യാമറ:% 1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>നിരസിക്കുക</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>മൈക്രോഫോണൊന്നും കണ്ടെത്തിയില്ല.</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>ഉപയോക്താവിനെ ക്ഷണിക്കുന്നതിൽ പരാജയപ്പെട്ടു: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>ക്ഷണിച്ച ഉപയോക്താവ്:% 1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -194,7 +176,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
@@ -254,7 +236,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -317,10 +299,15 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation type="unfinished"></translation>
     </message>
@@ -429,12 +416,12 @@
         <translation>ഉറപ്പാക്കൽ കോഡ്</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>അവ പൊരുത്തപ്പെടുന്നില്ല!</translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>പ്രയോഗിക്കുക</translation>
     </message>
@@ -475,7 +462,7 @@
         <translation>തിരയുക</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>ആളുകൾ</translation>
     </message>
@@ -523,12 +510,12 @@
         <translation>ഉറപ്പാക്കൽ കോഡ്</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>അവ പൊരുത്തപ്പെടുന്നില്ല!</translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -612,7 +599,7 @@
         <translation>ഉറപ്പാക്കൽ പരാജയപ്പെട്ടു</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -642,7 +629,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>അടയ്‌ക്കുക</translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished">സ്റ്റിക്കറുകൾ</translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -698,34 +742,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation>പാക്കിന്റെ പേര്</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation>ഇമോജി ആയി ഉപയോഗിക്കുക</translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation>സ്റ്റിക്കറായി ഉപയോഗിക്കുക</translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -735,7 +779,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -768,7 +812,7 @@
         <translation>അക്കൗണ്ട് പാക്ക് സൃഷ്ടിക്കുക</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation>പുതിയ മുറി പാക്ക്</translation>
     </message>
@@ -803,7 +847,7 @@
         <translation type="unfinished">തിരുത്തുക</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished">അടയ്‌ക്കുക</translation>
     </message>
@@ -821,7 +865,7 @@
         <translation>എല്ലാ ഫയലുകളും (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -834,7 +878,7 @@
         <translation>%1 - ലേക്ക് ഉപയോക്താക്കളെ ക്ഷണിക്കുക</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished"></translation>
     </message>
@@ -868,7 +912,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished"></translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Matrix ID</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>ഉദാ. @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -917,7 +961,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>ഉപകരണത്തിന്റെ പേര്</translation>
     </message>
@@ -927,7 +971,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation type="unfinished"></translation>
     </message>
@@ -937,26 +981,31 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>പ്രവേശിക്കുക</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -966,7 +1015,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -981,17 +1030,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>എസ് എസ് ഓ ലോഗിൻ</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1017,62 +1066,67 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+192"/>
-        <source>Encryption enabled</source>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>മുറിയുടെ പേര് നീക്കം ചെയ്തു</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>വിഷയം നീക്കം ചെയ്തു</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1087,27 +1141,22 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+38"/>
-        <source>Negotiating call...</source>
+        <location line="+41"/>
+        <source>%1 is negotiating the call...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation>ഇവരെ അനുവദിക്കുക</translation>
     </message>
     <message>
-        <location line="-95"/>
+        <location line="-102"/>
         <source>%1 answered the call.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-148"/>
-        <source>removed</source>
-        <translation>നീക്കംചെയ്‌തു</translation>
-    </message>
-    <message>
-        <location line="+160"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1115,7 +1164,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1125,17 +1174,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>ഒരു ഫയൽ അയയ്ക്കുക</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>ഒരു സന്ദേശം എഴുതുക….</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation>സ്റ്റിക്കറുകൾ</translation>
     </message>
@@ -1158,7 +1207,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>തിരുത്തുക</translation>
     </message>
@@ -1178,19 +1227,19 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1225,7 +1274,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation>&amp;വായിച്ചതായി കാണിക്കുക</translation>
     </message>
@@ -1278,7 +1327,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1308,7 +1357,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>റദ്ദാക്കു</translation>
     </message>
@@ -1381,7 +1430,7 @@ Example: https://server.my:8787</source>
         <translation>മൈക്രോഫോണൊന്നും കണ്ടെത്തിയില്ല.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1396,7 +1445,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>റദ്ദാക്കു</translation>
     </message>
@@ -1412,7 +1461,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1430,7 +1479,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1446,63 +1495,88 @@ Example: https://server.my:8787</source>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation type="unfinished">പാസ്‍വേഡ്</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">ഉപകരണത്തിന്റെ പേര്</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1512,25 +1586,35 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation type="unfinished">അടയ്‌ക്കുക</translation>
     </message>
@@ -1543,17 +1627,17 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1561,7 +1645,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1609,7 +1693,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1629,7 +1713,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1657,7 +1741,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished">അടയ്‌ക്കുക</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1677,7 +1761,12 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1690,7 +1779,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1727,12 +1816,12 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1825,6 +1914,21 @@ Example: https://server.my:8787</source>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1875,7 +1979,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1885,7 +1989,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1893,7 +1997,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1975,7 +2079,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2133,12 +2237,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation type="unfinished">അടയ്‌ക്കുക</translation>
     </message>
@@ -2146,7 +2250,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished"></translation>
@@ -2263,62 +2367,57 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
-        <source>%1 changed their avatar.</source>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>%1 changed some profile info.</source>
+        <source>%2 unbanned %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+5"/>
-        <source>%1 joined.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+3"/>
-        <source>%1 joined via authorisation from %2&apos;s server.</source>
+        <source>%2 rejected the knock from %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>%1 rejected their invite.</source>
+        <location line="-35"/>
+        <source>%1 changed their avatar.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
+        <source>%1 changed some profile info.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>%1 left the room.</source>
+        <location line="+5"/>
+        <source>%1 joined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
+        <location line="+3"/>
+        <source>%1 joined via authorisation from %2&apos;s server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
+        <location line="+11"/>
+        <source>%1 rejected their invite.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
+        <location line="+5"/>
+        <source>%1 left the room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2328,12 +2427,17 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation type="unfinished">നിങ്ങൾ ഈ മുറിയിൽ ചേർന്നു.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2343,18 +2447,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
+        <location line="+39"/>
+        <source>%1 left after having already left!</source>
+        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>%1 left after having already left!</source>
-        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2362,7 +2466,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2408,17 +2512,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2476,7 +2580,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2489,7 +2593,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2514,7 +2618,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2524,7 +2628,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2534,7 +2638,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2554,7 +2658,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2638,99 +2742,117 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
     <message>
-        <location line="+579"/>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
+        <location line="+2"/>
+        <source>Typing notifications</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
+        <location line="+2"/>
+        <source>Read receipts</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
+        <location line="+2"/>
+        <source>Alert on notification</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
+        <location line="+2"/>
+        <source>Use identicons</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
+        <source>Decrypt messages in sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -2740,301 +2862,308 @@ Only affects messages in encrypted chats.</source>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <source>Touchscreen mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
+        <location line="+2"/>
+        <source>Font size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <source>Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
+        <source>Emoji Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <source>Ringtone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
+        <source>Microphone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
+        <source>Camera</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
+        <location line="+2"/>
+        <source>Camera resolution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <source>Camera frame rate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
+        <source>Send encrypted messages to verified users only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
+        <source>Online Key Backup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Profile</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
+        <location line="+2"/>
+        <source>User ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
+        <source>Accesstoken</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
+        <location line="+2"/>
+        <source>Device ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <source>Device Fingerprint</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
+        <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
+        <source>Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
+        <location line="+2"/>
+        <source>Platform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <source>GENERAL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>TIMELINE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>SIDEBAR</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
+        <source>TRAY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
+        <source>CALLS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>ENCRYPTION</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>INFO</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
+        <location line="+2"/>
+        <source>Session Keys</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
+        <location line="+2"/>
+        <source>Online backup key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
+        <location line="+2"/>
+        <source>Self signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
+        <source>User signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
+        <location line="+2"/>
+        <source>Master signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
+        <location line="+91"/>
+        <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -3043,52 +3172,52 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
         <translation type="unfinished">ഒരു ഫയൽ തിരഞ്ഞെടുക്കുക</translation>
     </message>
@@ -3098,7 +3227,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished">എല്ലാ ഫയലുകളും (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3106,26 +3235,26 @@ This usually causes the application icon in the task bar to animate in some fash
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3140,10 +3269,48 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3156,7 +3323,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3171,7 +3338,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation type="unfinished">റദ്ദാക്കു</translation>
     </message>
@@ -3179,22 +3346,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation type="unfinished">പ്രവേശിക്കുക</translation>
     </message>
@@ -3202,7 +3369,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation type="unfinished"></translation>
     </message>
diff --git a/resources/langs/nheko_nl.ts b/resources/langs/nheko_nl.ts
index 644d04c15..9943d7a7b 100644
--- a/resources/langs/nheko_nl.ts
+++ b/resources/langs/nheko_nl.ts
@@ -35,28 +35,10 @@
         <translation>Microfoon dempen</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Wachten op bevestiging</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Wachten op de andere kant om verificatie te voltooien.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Annuleren</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation>
             <numerusform>%1 en %n ander</numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Video oproep</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>Apparaten</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Aanvaarden</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Onbekende microfoon: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Onbekende camera: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Afwijzen</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Geen microfoon gevonden.</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Gebruiker uitnodigen mislukt: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Gebruiker uitgenodigd: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Het migreren can de cache naar de huidige versie is mislukt. Dit kan verscheidene redenen hebben. Maak a.u.b een issue aan en probeer in de tussentijd een oudere versie. Je kan ook proberen de cache handmatig te verwijderen.</translation>
     </message>
@@ -194,7 +176,7 @@
         <translation>Weet je zeker dat je %1 (%2) wil uitnodigen?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Uitnodigen van %1 naar %2 mislukt: %3</translation>
     </message>
@@ -254,7 +236,7 @@
         <translation>Toegelaten gebruiker: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Weet je zeker dat je een privé chat wil beginnen met %1?</translation>
     </message>
@@ -317,10 +299,15 @@
         <translation>Kamer verlaten mislukt: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Kon %1 niet verwijderen uit %2: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Ontsleutel geheimen</translation>
     </message>
@@ -429,12 +416,12 @@
         <translation>Verificatiecode</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Controleer de volgende getallen.  Je zou dezelfde getallen moeten zien aan beide kanten.  Druk als ze verschillen op &apos;Ze komen niet overeen!&apos; om de verificatie te annuleren!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Ze komen niet overeen!</translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Toepassen</translation>
     </message>
@@ -475,7 +462,7 @@
         <translation>Zoeken</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Mensen</translation>
     </message>
@@ -523,12 +510,12 @@
         <translation>Verificatiecode</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Vergelijk de volgende emoji. Je zou dezelfde moeten zien aan beide kanten. Als ze verschillen, druk dan op &apos;Ze komen niet overeen!&apos; om de verificatie te annuleren!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>Ze komen niet overeen!</translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation>Er is geen sleutel om dit bericht te ontsleutelen. We hebben de sleutel aangevraagd, maar je kan het opnieuw proberen als je ongeduldig bent.</translation>
     </message>
@@ -612,7 +599,7 @@
         <translation>Verificatie mislukt</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>De andere kant ondersteunt ons verificatieprotocol niet.</translation>
     </message>
@@ -642,7 +629,7 @@
         <translation>Onbekende verificatiefout.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Sluiten</translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Bericht doorsturen</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished">Stickers</translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation>Afbeeldingspakket aanpassen</translation>
     </message>
@@ -698,34 +742,34 @@
         <translation>Kies icoon afbeelding voor pakket</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation>Staatsleutel</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation>Afbeeldingspakketnaam</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation>Bronvermelding</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation>Gebruik als emoji</translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation>Gebruik als sticker</translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation>Shortcode</translation>
     </message>
@@ -735,7 +779,7 @@
         <translation>Tekstinhoud</translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation>Verwijder uit afbeeldingspakket</translation>
     </message>
@@ -768,7 +812,7 @@
         <translation>Maak pakket voor je eigen account aan</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation>Nieuw afbeeldingspakket voor kamer</translation>
     </message>
@@ -803,7 +847,7 @@
         <translation>Bewerken</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation>Sluiten</translation>
     </message>
@@ -821,7 +865,7 @@
         <translation>Alle bestanden (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Het is niet is gelukt om de media te versturen. Probeer het a.u.b. opnieuw.</translation>
     </message>
@@ -834,7 +878,7 @@
         <translation>Nodig gebruikers uit naar %1</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation>Gebruikers ID om uit te nodigen</translation>
     </message>
@@ -868,7 +912,7 @@
         <translation>Ga kamer binnen</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation>Kamer ID of alias</translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Matrix ID</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>bijv. @jan:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -920,7 +964,7 @@ Als Nheko je thuisserver niet kan vinden, zal er een veld verschijnen om de serv
         <translation>Je wachtwoord.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Apparaatnaam</translation>
     </message>
@@ -930,7 +974,7 @@ Als Nheko je thuisserver niet kan vinden, zal er een veld verschijnen om de serv
         <translation>Een naam voor dit apparaat, welke zichtbaar zal zijn voor anderen als ze je apparaten verifiëren. Als niets is ingevuld zal er een standaardnaam worden gebruikt.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Thuisserveradres</translation>
     </message>
@@ -940,27 +984,32 @@ Als Nheko je thuisserver niet kan vinden, zal er een veld verschijnen om de serv
         <translation>mijnserver.nl:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>Het adres dat gebruikt kan worden om contact te zoeken met je thuisserver&apos;s gebruikers API.
 Voorbeeld: https://mijnserver.nl:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>INLOGGEN</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Je hebt een ongeldige Matrix ID ingevuld. Correct voorbeeld: @jan:matrix.org</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Automatische herkenning mislukt. Ongeldig antwoord ontvangen.</translation>
     </message>
@@ -970,7 +1019,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Automatische herkenning mislukt. Onbekende fout tijdens het opvragen van .well-known.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>De vereiste aanspreekpunten werden niet gevonden. Mogelijk geen Matrix server.</translation>
     </message>
@@ -985,17 +1034,17 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Een onbekende fout trad op. Zorg dat de thuisserver geldig is.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>SSO INLOGGEN</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Leeg wachtwoord</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>SSO inloggen mislukt</translation>
     </message>
@@ -1021,67 +1070,67 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
-        <translation>verwijderd</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
-        <translation>Versleuteling geactiveerd</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>kamernaam veranderd in: %1</translation>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>kamernaam verwijderd</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>onderwerp aangepast naar: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>onderwerp verwijderd</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation>%1 heeft de kameravatar veranderd</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation>%1 heeft de vastgeprikte berichten aangepast.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation>%1 heeft de stickers en emoji in deze kamer aangepast.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation>%1 heeft de adressen voor deze kamer aangepast.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation>%1 heeft de groepen voor deze kamer aangepast.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 maakte en configureerde de kamer: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 plaatste een spraakoproep.</translation>
     </message>
@@ -1096,22 +1145,22 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>%1 plaatste een oproep.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation>%1 beantwoordde de oproep.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 beëindigde de oproep.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
-        <translation>Onderhandelen oproep…</translation>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation>Binnenlaten</translation>
     </message>
@@ -1119,7 +1168,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Ophangen</translation>
     </message>
@@ -1129,17 +1178,17 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Plaats een oproep</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Verstuur een bestand</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Typ een bericht…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation>Stickers</translation>
     </message>
@@ -1162,7 +1211,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Bewerken</translation>
     </message>
@@ -1182,19 +1231,19 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Opties</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation>&amp;Kopiëren</translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation>Kopieer &amp;link</translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation>Re&amp;ageren</translation>
     </message>
@@ -1229,7 +1278,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>&amp;Doorsturen</translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation>Gelezen &amp;markeren</translation>
     </message>
@@ -1282,7 +1331,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Ontvangen verificatieverzoek</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation>Om andere gebruikers te laten weten welke apparaten echt van jou zijn, kan je ze verifiëren. Dit zorgt ook dat reservesleutels automatisch werken. Nu een ongeverifiëerd apparaat verifiëren? (Zorg a.u.b. dat je een van de apparaten bij de hand hebt.)</translation>
     </message>
@@ -1312,7 +1361,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Je apparaat (%1) heeft verzocht om verificatie.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Annuleren</translation>
     </message>
@@ -1385,7 +1434,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Geen microfoon gevonden.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Spraak</translation>
     </message>
@@ -1400,7 +1449,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Scherm</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Annuleren</translation>
     </message>
@@ -1416,7 +1465,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Creëer een uniek profiel, waardoor je op meerdere accounts tegelijk kan inloggen, en meerdere kopieën van Nheko tegelijk kan starten.</translation>
     </message>
@@ -1434,7 +1483,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation>Leesbevestigingen</translation>
     </message>
@@ -1450,63 +1499,88 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Gebruikersnaam</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>De gebruikersnaam mag niet leeg zijn, en mag alleen de volgende tekens bevatten: a-z, 0-9, ., _, =, -, en /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Wachtwoord</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Kies a.u.b. een veilig wachtwoord. De exacte vereisten voor een wachtwoord kunnen per server verschillen.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Wachtwoord bevestigen</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Thuisserver</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Een server die registratie toestaat. Omdat Matrix gedecentraliseerd is, moet je eerst zelf een server vinden om je op te registeren, of je eigen server hosten.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Apparaatnaam</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished">Een naam voor dit apparaat, welke zichtbaar zal zijn voor anderen als ze je apparaten verifiëren. Als niets is ingevuld zal er een standaardnaam worden gebruikt.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>REGISTREREN</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Automatische herkenning mislukt. Onjuist gevormd antwoord ontvangen.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation>Automatische herkenning mislukt. Onbekende fout bij opvragen van .well-known.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>De vereiste aanspreekpunten konden niet worden gevonden. Mogelijk geen Matrix server.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation>Onjuist gevormd antwoord ontvangen. Zorg dat de thuisserver geldig is.</translation>
     </message>
@@ -1516,25 +1590,35 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Een onbekende fout trad op. Zorg dat de thuisserver geldig is.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Het wachtwoord is niet lang genoeg (minimaal 8 tekens)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>De wachtwoorden komen niet overeen</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Ongeldige servernaam</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Sluiten</translation>
     </message>
@@ -1547,17 +1631,17 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation>Verken openbare kamers</translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation>Zoek naar openbare kamers</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation>Kies een aangepaste thuisserver</translation>
     </message>
@@ -1565,7 +1649,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>geen versie opgeslagen</translation>
     </message>
@@ -1613,7 +1697,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Maak nieuwe markering…</translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation>Statusbericht</translation>
     </message>
@@ -1633,7 +1717,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Stel statusbericht in</translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation>Uitloggen</translation>
     </message>
@@ -1661,7 +1745,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Sluiten</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation>Nieuwe chat beginnen</translation>
     </message>
@@ -1681,7 +1765,12 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Kamerlijst</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation>Gebruikersinstellingen</translation>
     </message>
@@ -1694,7 +1783,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Deelnemers in %1</translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation>
@@ -1731,12 +1820,12 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation>Kamerinstellingen</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation>
             <numerusform>%n deelnemer</numerusform>
@@ -1829,6 +1918,21 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation>Verander welke afbeeldingspakketten zijn ingeschakeld, verwijder ze of voeg nieuwe toe</translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1879,7 +1983,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation>Wachtende uitnodiging.</translation>
     </message>
@@ -1889,7 +1993,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
         <translation>Voorbeeld van deze kamer</translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation>Geen voorbeeld beschikbaar</translation>
     </message>
@@ -1897,7 +2001,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation>Voer a.u.b. je wachtwoord in om door te gaan:</translation>
     </message>
@@ -1979,7 +2083,7 @@ Voorbeeld: https://mijnserver.nl:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation>Verbinden met geheimopslag mislukt</translation>
     </message>
@@ -2139,12 +2243,12 @@ Als je &quot;verifieer&quot; kiest, moet je het andere apparaat bij de hand hebb
         <translation>Succesvolle verificatie</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Verificatie gelukt!  Beide kanten hebben hun apparaat geverifieerd!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Sluiten</translation>
     </message>
@@ -2152,7 +2256,7 @@ Als je &quot;verifieer&quot; kiest, moet je het andere apparaat bij de hand hebb
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Bericht intrekken mislukt: %1</translation>
@@ -2270,12 +2374,27 @@ Reason: %4</source>
 Reden: %4</translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 is uitgenodigd.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 is van avatar veranderd.</translation>
     </message>
@@ -2300,32 +2419,12 @@ Reden: %4</translation>
         <translation>%1 heeft de uitnodiging geweigerd.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Uitnodiging van %1 is ingetrokken.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 heeft de kamer verlaten.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>%1 is verwijderd.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>%1 is opnieuw toegelaten.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 is verbannen.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation>Reden: %1</translation>
     </message>
@@ -2335,14 +2434,19 @@ Reden: %4</translation>
         <translation>%1 heeft het aankloppen ingetrokken.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Je neemt nu deel aan deze kamer.</translation>
     </message>
     <message>
-        <location line="+1023"/>
-        <source>%1 has changed their avatar and changed their display name to %2.</source>
-        <translation>%1 is van avatar veranderd en heet nu %2.</translation>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
+        <source>%1 has changed their avatar and changed their display name to %2.</source>
+        <translation>%1 is van avatar veranderd en heet nu %2.</translation>
     </message>
     <message>
         <location line="+4"/>
@@ -2350,18 +2454,18 @@ Reden: %4</translation>
         <translation>%1 heet nu %2.</translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Aankloppen van %1 geweigerd.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 is vertrokken na reeds vertrokken te zijn!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 klopt aan.</translation>
     </message>
@@ -2369,7 +2473,7 @@ Reden: %4</translation>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Bewerkt</translation>
     </message>
@@ -2415,17 +2519,17 @@ Reden: %4</translation>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Terug naar kamerlijst</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Geen kamer geselecteerd</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation>Deze kamer is niet versleuteld!</translation>
     </message>
@@ -2483,7 +2587,7 @@ Reden: %4</translation>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Tonen</translation>
     </message>
@@ -2496,7 +2600,7 @@ Reden: %4</translation>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation>Geen beschikbare registratiestromen!</translation>
     </message>
@@ -2521,7 +2625,7 @@ Reden: %4</translation>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Globaal gebruikersprofiel</translation>
     </message>
@@ -2531,7 +2635,7 @@ Reden: %4</translation>
         <translation>Kamerspecifiek gebruikersprofiel</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation>Verander avatar globaal.</translation>
     </message>
@@ -2541,7 +2645,7 @@ Reden: %4</translation>
         <translation>Verander avatar. Heeft alleen effect op deze kamer.</translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation>Verander weergavenaam globaal.</translation>
     </message>
@@ -2561,7 +2665,7 @@ Reden: %4</translation>
         <translation>Dit is een kamer-specifiek profiel. De weergavenaam en avatar kunnen verschillen van de globale versie.</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation>Open het globale profiel van deze gebruiker.</translation>
     </message>
@@ -2645,523 +2749,586 @@ Reden: %4</translation>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>Standaard</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Thema</translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Schaalfactor</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Oplichten van berichten onder muis</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Grote emoji in de tijdlijn</translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>Minimaliseren naar systeemvak</translation>
+        <translation type="unfinished">Minimaliseren naar systeemvak</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>Geminimaliseerd opstarten</translation>
+        <translation type="unfinished">Geminimaliseerd opstarten</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>Zijbalk met groepen</translation>
+        <translation type="unfinished">Zijbalk met groepen</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Ronde avatars</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Verstuur berichten in Markdown</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>profiel: %1</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>Standaard</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>OPROEPEN</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation type="unfinished">Speel animaties in afbeeldingen alleen af tijdens muisover</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation>Kruisversleutelingssleutels</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Typnotificaties</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>OPVRAGEN</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Sorteer kamers op ongelezen berichten</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>DOWNLOADEN</translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Laat knoppen zien in tijdlijn</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Blijf draaien in de achtergrond na het sluiten van het scherm.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation type="unfinished">Beperk breedte van tijdlijn</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Start de applicatie in de achtergrond zonder het scherm te tonen.</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Leesbevestigingen</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Verander het uiterlijk van avatars in de chats.
-UIT - vierkant, AAN - cirkel.</translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Bureaubladnotificaties</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation>Gebruik identicons</translation>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Melding bij notificatie</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Laat een kolom zien met groepen en markeringen naast de kamerlijst.</translation>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Ronde avatars</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Ontsleutel berichten in de zijbalk</translation>
+        <location line="+2"/>
+        <source>Use identicons</source>
+        <translation type="unfinished">Gebruik identicons</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Ontsleutel de berichten getoond in de zijbalk.
-Heeft alleen effect op versleutelde chats.</translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation type="unfinished">Ontsleutel berichten in de zijbalk</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Privacy Screen</source>
-        <translation>Privacy scherm</translation>
+        <translation type="unfinished">Privacy scherm</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation>Als het scherm focus verliest, zal de tijdlijn
-worden geblurt.</translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
-        <translation>Privacy scherm wachttijd (in seconden [0 - 3600])</translation>
+        <translation type="unfinished">Privacy scherm wachttijd (in seconden [0 - 3600])</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation>Stel wachttijd (in seconden) voor hoe lang het duurt nadat
-focus weg is voordat het scherm wordt geblurt.
-Kies 0 om direct te blurren. Maximale waarde is 1 uur (3600 seconden)</translation>
+        <source>Touchscreen mode</source>
+        <translation type="unfinished">Touchscreenmodus</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Laat knoppen zien in tijdlijn</translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation type="unfinished">Lettertypegrootte</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Laat knoppen zien om snel te reageren, beantwoorden, of extra opties te kunnen gebruiken naast elk bericht.</translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Lettertype</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Beperk breedte van tijdlijn</translation>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Emoji lettertype</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Stel de maximale breedte in van berichten in de tijdlijn (in pixels). Dit kan helpen bij de leesbaarheid als Nheko gemaximaliseerd is.</translation>
+        <source>Ringtone</source>
+        <translation type="unfinished">Beltoon</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Typnotificaties</translation>
+        <source>Microphone</source>
+        <translation type="unfinished">Microfoon</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Laat zien wie er typt in een kamer.
-Dit schakelt ook het versturen van je eigen typnotificaties naar anderen in of uit.</translation>
+        <source>Camera</source>
+        <translation type="unfinished">Camera</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Sorteer kamers op ongelezen berichten</translation>
+        <location line="+2"/>
+        <source>Camera resolution</source>
+        <translation type="unfinished">Cameraresolutie</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Laat kamers met nieuwe berichten eerst zien.
-Indien uitgeschakeld, staan kamers gesorteerd op de tijd van het laatst ontvangen bericht.
-Indien ingeschakeld, staan kamers met actieve notificaties (het cirkeltje met een getal erin) bovenaan. Kamers die je hebt gedempt zullen nog steeds op tijd zijn gesorteerd, want die vind je blijkbaar niet zo belangrijk als de andere kamers.</translation>
+        <source>Camera frame rate</source>
+        <translation type="unfinished">Cameraverversingssnelheid</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Leesbevestigingen</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished">Sta terugval naar oproepassistentieserver toe</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Laat zien of je bericht gelezen is.
-De status staat naast de tijdsindicatie.</translation>
+        <source>Send encrypted messages to verified users only</source>
+        <translation type="unfinished">Verstuur alleen versleutelde berichten naar geverifieerde gebruikers</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Verstuur berichten in Markdown</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished">Deel sleutels met geverifieerde gebruikers en apparaten</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Sta het gebruik van Markdown in berichten toe.
-Indien uitgeschakeld worden alle berichten als platte tekst verstuurd.</translation>
+        <source>Online Key Backup</source>
+        <translation type="unfinished">Online reservesleutel</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
-        <translation>Speel animaties in afbeeldingen alleen af tijdens muisover</translation>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Bureaubladnotificaties</translation>
+        <location line="+2"/>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Verstuur een notificatie over ontvangen berichten als het scherm geen focus heeft.</translation>
+        <source>Accesstoken</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Melding bij notificatie</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">Apparaat ID</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Activeer een melding als een bericht binnen komt.
-Meestal zorgt dit dat het icoon in de taakbalk op een manier animeert of iets dergelijks.</translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Apparaat vingerafdruk</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Oplichten van berichten onder muis</translation>
+        <source>Homeserver</source>
+        <translation type="unfinished">Thuisserver</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Veranderd de achtergrondkleur van het bericht waar de muiscursor op staat.</translation>
+        <source>Version</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Grote emoji in de tijdlijn</translation>
+        <location line="+2"/>
+        <source>Platform</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Maakt het lettertype groter als berichten met slechts enkele emoji worden getoond.</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">ALGEMEEN</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
-        <translation>Verstuur alleen versleutelde berichten naar geverifieerde gebruikers</translation>
+        <location line="+2"/>
+        <source>TIMELINE</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
-        <translation>Vereist dat een gebruiker geverifieerd is voordat berichten worden versleuteld. Verbetert de beveiliging maar maakt versleutelen irritanter om in te stellen.</translation>
+        <source>SIDEBAR</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Deel sleutels met geverifieerde gebruikers en apparaten</translation>
+        <source>TRAY</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation>Beantwoord automatisch sleutelverzoeken van andere gebruikers, indien geverifieerd, ook als dat apparaat normaal geen toegang tot die sleutels had moeten hebben.</translation>
+        <source>NOTIFICATIONS</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation>Online reservesleutel</translation>
+        <source>CALLS</source>
+        <translation type="unfinished">OPROEPEN</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
-        <translation>Download van en upload naar de online reservesleutel.</translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">VERSLEUTELING</translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
-        <translation>Activeer online reservesleutelopslag</translation>
+        <location line="+2"/>
+        <source>INFO</source>
+        <translation type="unfinished">INFO</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation>De Nheko auteurs raden af om online reservesleutelopslag te gebruiken totdat symmetrische reservesleutelopslag beschikbaar is. Toch activeren?</translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation type="unfinished">Sessiesleutels</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>IN CACHE</translation>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>NIET IN CACHE</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Schaalfactor</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation type="unfinished">Zelf ondertekenen sleutel</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Verander de schaalfactor van de gehele gebruikersinterface.</translation>
+        <source>User signing key</source>
+        <translation type="unfinished">Gebruikerssleutel</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Lettertypegrootte</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation type="unfinished">Hoofdsleutel</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Lettertype</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished">Standaard</translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Thema</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation type="unfinished">Stel het geluid in dat speelt als een oproep binnen komt</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Beltoon</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished">Stel de maximale breedte in van berichten in de tijdlijn (in pixels). Dit kan helpen bij de leesbaarheid als Nheko gemaximaliseerd is.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Stel het geluid in dat speelt als een oproep binnen komt</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished">Stel wachttijd (in seconden) voor hoe lang het duurt nadat
+focus weg is voordat het scherm wordt geblurt.
+Kies 0 om direct te blurren. Maximale waarde is 1 uur (3600 seconden)</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Microfoon</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Veranderd de achtergrondkleur van het bericht waar de muiscursor op staat.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Camera</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">Maakt het lettertype groter als berichten met slechts enkele emoji worden getoond.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Cameraresolutie</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation type="unfinished">Blijf draaien in de achtergrond na het sluiten van het scherm.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Cameraverversingssnelheid</translation>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation type="unfinished">Start de applicatie in de achtergrond zonder het scherm te tonen.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Sta terugval naar oproepassistentieserver toe</translation>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation type="unfinished">Laat een kolom zien met groepen en markeringen naast de kamerlijst.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>Zal turn.matrix.org gebruiken om te assisteren als je thuisserver geen TURN server heeft.</translation>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">Sta het gebruik van Markdown in berichten toe.
+Indien uitgeschakeld worden alle berichten als platte tekst verstuurd.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>Apparaat ID</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Apparaat vingerafdruk</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Sessiesleutels</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished">Speelt media zoals GIFs en WebPs alleen af terwijl de muiscursor erboven hangt.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished">Laat zien wie er typt in een kamer.
+Dit schakelt ook het versturen van je eigen typnotificaties naar anderen in of uit.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPORTEREN</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished">Laat kamers met nieuwe berichten eerst zien.
+Indien uitgeschakeld, staan kamers gesorteerd op de tijd van het laatst ontvangen bericht.
+Indien ingeschakeld, staan kamers met actieve notificaties (het cirkeltje met een getal erin) bovenaan. Kamers die je hebt gedempt zullen nog steeds op tijd zijn gesorteerd, want die vind je blijkbaar niet zo belangrijk als de andere kamers.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>EXPORTEREN</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished">Laat knoppen zien om snel te reageren, beantwoorden, of extra opties te kunnen gebruiken naast elk bericht.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>VERSLEUTELING</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Laat zien of je bericht gelezen is.
+De status staat naast de tijdsindicatie.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>ALGEMEEN</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Verstuur een notificatie over ontvangen berichten als het scherm geen focus heeft.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>INTERFACE</translation>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Activeer een melding als een bericht binnen komt.
+Meestal zorgt dit dat het icoon in de taakbalk op een manier animeert of iets dergelijks.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished">Verander het uiterlijk van avatars in de chats.
+UIT - vierkant, AAN - cirkel.</translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
-        <translation>Laat een identicon zien in plaats van een letter wanneer er geen avatar is ingesteld.</translation>
+        <translation type="unfinished">Laat een identicon zien in plaats van een letter wanneer er geen avatar is ingesteld.</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation>Speelt media zoals GIFs en WebPs alleen af terwijl de muiscursor erboven hangt.</translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation type="unfinished">Ontsleutel de berichten getoond in de zijbalk.
+Heeft alleen effect op versleutelde chats.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Touchscreenmodus</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation type="unfinished">Als het scherm focus verliest, zal de tijdlijn
+worden geblurt.</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Will prevent text selection in the timeline to make touch scrolling easier.</source>
-        <translation>Voorkomt dat tekst geselecteerd wordt in de tijdlijn, om scrollen makkelijker te maken.</translation>
+        <translation type="unfinished">Voorkomt dat tekst geselecteerd wordt in de tijdlijn, om scrollen makkelijker te maken.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Emoji lettertype</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Verander de schaalfactor van de gehele gebruikersinterface.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Hoofdsleutel</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation type="unfinished">Zal turn.matrix.org gebruiken om te assisteren als je thuisserver geen TURN server heeft.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>Je belangrijkste sleutel. Deze hoeft niet gecached te zijn, en dat maakt het minder waarschijnlijk dat hij ooit gestolen wordt. Hij is alleen nodig om je andere sleutels te roteren.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation type="unfinished">Vereist dat een gebruiker geverifieerd is voordat berichten worden versleuteld. Verbetert de beveiliging maar maakt versleutelen irritanter om in te stellen.</translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>Gebruikerssleutel</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation type="unfinished">Beantwoord automatisch sleutelverzoeken van andere gebruikers, indien geverifieerd, ook als dat apparaat normaal geen toegang tot die sleutels had moeten hebben.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>De sleutel die wordt gebruikt om andere gebruikers te verifiëren. Indien gecached zal het verifiëren van een gebruiker alle apparaten van die gebruiker verifiëren.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation type="unfinished">Download van en upload naar de online reservesleutel.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation>Zelf ondertekenen sleutel</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation type="unfinished">De sleutel om online reservesleutels mee te ontsleutelen. Indien gecached kan je online reservesleutel activeren om je sleutels veilig versleuteld op de server op te slaan.</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
-        <translation>De sleutel om je eigen apparaten mee te verifiëren. Indien gecached zal één van je apparaten verifiëren dat doen voor andere apparaten en gebruikers die jou geverifieerd hebben.</translation>
+        <translation type="unfinished">De sleutel om je eigen apparaten mee te verifiëren. Indien gecached zal één van je apparaten verifiëren dat doen voor andere apparaten en gebruikers die jou geverifieerd hebben.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Reservesleutel</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation type="unfinished">De sleutel die wordt gebruikt om andere gebruikers te verifiëren. Indien gecached zal het verifiëren van een gebruiker alle apparaten van die gebruiker verifiëren.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation>De sleutel om online reservesleutels mee te ontsleutelen. Indien gecached kan je online reservesleutel activeren om je sleutels veilig versleuteld op de server op te slaan.</translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation type="unfinished">Je belangrijkste sleutel. Deze hoeft niet gecached te zijn, en dat maakt het minder waarschijnlijk dat hij ooit gestolen wordt. Hij is alleen nodig om je andere sleutels te roteren.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
-        <translation>Kies een bestand</translation>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
         <source>All Files (*)</source>
-        <translation>Alle bestanden (*)</translation>
+        <translation type="unfinished">Alle bestanden (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Open sessiebestand</translation>
+        <translation type="unfinished">Open sessiebestand</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Fout</translation>
+        <translation type="unfinished">Fout</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Wachtwoord voor bestand</translation>
+        <translation type="unfinished">Wachtwoord voor bestand</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Voer de wachtwoordzin in om het bestand te ontsleutelen:</translation>
+        <translation type="unfinished">Voer de wachtwoordzin in om het bestand te ontsleutelen:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>Het wachtwoord kan niet leeg zijn</translation>
+        <translation type="unfinished">Het wachtwoord kan niet leeg zijn</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Voer wachtwoordzin in om je sessiesleutels mee te versleutelen:</translation>
+        <translation type="unfinished">Voer wachtwoordzin in om je sessiesleutels mee te versleutelen:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>Bestand om geëxporteerde sessiesleutels in op te slaan</translation>
+        <translation type="unfinished">Bestand om geëxporteerde sessiesleutels in op te slaan</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>OPVRAGEN</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>DOWNLOADEN</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>IN CACHE</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>NIET IN CACHE</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPORTEREN</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>EXPORTEREN</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation>Geen versleutelde chat gevonden met deze gebruiker. Maak een versleutelde chat aan met deze gebruiker en probeer het opnieuw.</translation>
     </message>
@@ -3174,7 +3341,7 @@ Meestal zorgt dit dat het icoon in de taakbalk op een manier animeert of iets de
         <translation>Wachten op andere kant…</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Wachten op de andere kant om het verificatieverzoek te accepteren.</translation>
     </message>
@@ -3189,7 +3356,7 @@ Meestal zorgt dit dat het icoon in de taakbalk op een manier animeert of iets de
         <translation>Wachten op de andere kant om het verificatieproces af te ronden.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Annuleren</translation>
     </message>
@@ -3197,22 +3364,22 @@ Meestal zorgt dit dat het icoon in de taakbalk op een manier animeert of iets de
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Welkom bij Nheko! De bureaubladclient voor het Matrix-protocol.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Geniet van je verblijf!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>REGISTREREN</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>INLOGGEN</translation>
     </message>
@@ -3220,7 +3387,7 @@ Meestal zorgt dit dat het icoon in de taakbalk op een manier animeert of iets de
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Gisteren</translation>
     </message>
diff --git a/resources/langs/nheko_pl.ts b/resources/langs/nheko_pl.ts
index bdecce0ad..dda73bb91 100644
--- a/resources/langs/nheko_pl.ts
+++ b/resources/langs/nheko_pl.ts
@@ -35,28 +35,10 @@
         <translation>Wycisz mikrofon</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Oczekiwanie na potwierdzenie</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Oczekiwanie na dokończenie weryfikacji przez drugą stronę.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Anuluj</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -74,7 +56,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Rozmowa Wideo</translation>
     </message>
@@ -107,27 +89,27 @@
         <translation>UrzÄ…dzenia</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Akceptuj</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Niezidentyfikowany mikrofon: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Nieznana kamera: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Odrzuć</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Nie znaleziono mikrofonu.</translation>
     </message>
@@ -143,18 +125,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Nie udało się zaprosić użytkownika: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Zaproszono użytkownika %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Migracja cachu do obecnej wersji nieudana. Przyczyny mogą być różne. Proszę zgłosić błąd i w miedzyczasie używać starszej wersji. Możesz również spróbuwać usunąć cache ręcznie.</translation>
     </message>
@@ -195,7 +177,7 @@
         <translation>Czy na pewno chcesz zaprosić %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Zaproszenie %1 do %2 nieudane: %3</translation>
     </message>
@@ -255,7 +237,7 @@
         <translation>Odblokowano użytkownika: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Czy na pewno chcesz rozpocząć prywatny czat z %1?</translation>
     </message>
@@ -318,10 +300,15 @@
         <translation>Nie udało się opuścić pokoju: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Nie udało się wykopać %1 z %2: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -397,7 +384,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Odszyfruj sekrety</translation>
     </message>
@@ -430,12 +417,12 @@
         <translation>Kod weryfikacyjny</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Zweryfikuj poniższy ciąg cyfr. Po obu stronach powinny być wyświetlane identyczne. Jeżeli ciągi się różnią, naciśnij &apos;Nie pasują!&apos; aby przerwać weryfikację!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Nie pasujÄ…!</translation>
     </message>
@@ -448,7 +435,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Zastosuj</translation>
     </message>
@@ -476,7 +463,7 @@
         <translation>Szukaj</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Ludzie</translation>
     </message>
@@ -524,12 +511,12 @@
         <translation>Kod weryfikacyjny</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Zweryfikuj poniższe emotikony. Powinny być identyczne po obu stronach. Jeżeli są różne, naciśnij &apos;Nie pasują!&apos; aby przerwać weryfikację!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>Nie pasujÄ…!</translation>
     </message>
@@ -542,7 +529,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation>Brakuje klucza do odblokowania tej wiadomości. Poprosiliśmy o klucz automatycznie, ale możesz poprosić ręcznie jeszcze raz, jeśli jesteś niecierpliwy(a).</translation>
     </message>
@@ -613,7 +600,7 @@
         <translation>Weryfikacja nieudana</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>Inny klient nie obsługuje naszego protokołu weryfikacji.</translation>
     </message>
@@ -643,7 +630,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Zamknij</translation>
     </message>
@@ -651,15 +638,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Prześlij wiadomość dalej</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished">Naklejki</translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation>Edytowanie paczki obrazów</translation>
     </message>
@@ -699,34 +743,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation>Unikalny klucz paczki</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation>Nazwa paczki</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation>Źródło (autor/link)</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation>Użyj jako Emoji</translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation>Użyj jako Naklejki</translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation>Skrót</translation>
     </message>
@@ -736,7 +780,7 @@
         <translation>Treść</translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation>Usuń z paczki</translation>
     </message>
@@ -769,7 +813,7 @@
         <translation>Utwórz paczkę konta</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation>Nowa paczka pokoju</translation>
     </message>
@@ -804,7 +848,7 @@
         <translation>Edytuj</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation>Zamknij</translation>
     </message>
@@ -822,7 +866,7 @@
         <translation>Wszystkie pliki (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Wysłanie mediów nie powiodło się. Spróbuj ponownie.</translation>
     </message>
@@ -835,7 +879,7 @@
         <translation>Zaproś użytkowników do %1</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation>ID użytkownika do zaproszenia</translation>
     </message>
@@ -869,7 +913,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished">ID pokoju lub alias</translation>
     </message>
@@ -890,17 +934,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>ID Matrixa</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>np. @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -920,7 +964,7 @@ Jeżeli Nheko nie odnajdzie Twojego serwera domowego, wyświetli formularz umoż
         <translation>Twoje hasło.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Nazwa urzÄ…dzenia</translation>
     </message>
@@ -930,7 +974,7 @@ Jeżeli Nheko nie odnajdzie Twojego serwera domowego, wyświetli formularz umoż
         <translation>Nazwa dla tego urządzenia, będzie ona widoczna dla innych użytkowników, kiedy będą weryfikować Twoje urządzenia. Jeżeli żadna nie jest podana, używana jest domyślna.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Adres Homeserwer-a</translation>
     </message>
@@ -940,27 +984,32 @@ Jeżeli Nheko nie odnajdzie Twojego serwera domowego, wyświetli formularz umoż
         <translation>server.my:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>Adres który może być użyty do komunikacji z klienckim API homeserwer-a.
 Przykład: https://server.my:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>ZALOGUJ</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Wprowadzono nieprawidłowe Matrix ID. Przykład prawidłowego ID: @ania:matrix.org</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Automatyczne odkrywanie zakończone niepowodzeniem. Otrzymano nieprawidłową odpowiedź.</translation>
     </message>
@@ -970,7 +1019,7 @@ Przykład: https://server.my:8787</translation>
         <translation>Automatyczne odkrywanie zakończone niepowodzeniem. Napotkano nieznany błąd. .well-known.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Nie odnaleziono wymaganych punktów końcowych. To może nie być serwer Matriksa.</translation>
     </message>
@@ -985,17 +1034,17 @@ Przykład: https://server.my:8787</translation>
         <translation>Wystąpił nieznany błąd. Upewnij się, że domena serwera domowego jest prawidłowa.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>Logowanie SSO</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Puste hasło</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>Logowanie SSO zakończone niepowodzeniem</translation>
     </message>
@@ -1021,67 +1070,67 @@ Przykład: https://server.my:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
-        <translation>usunięto</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
-        <translation>Szyfrowanie włączone</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>Nazwa pokoju zmieniona na: %1</translation>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>usunięto nazwę pokoju</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>temat zmieniono na: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>usunięto temat</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation>%1 zmienił avatar pokoju</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 utworzył i skonfigurował pokój: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 rozpoczął(-ęła) połączenie głosowe.</translation>
     </message>
@@ -1096,22 +1145,22 @@ Przykład: https://server.my:8787</translation>
         <translation>%1 rozpoczął(-ęła) połączenie.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation>%1 odebrał(a) połączenie.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 zakończył(a) połączenie.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
-        <translation>Negocjowanie połączenia…</translation>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation>Wpuść</translation>
     </message>
@@ -1119,7 +1168,7 @@ Przykład: https://server.my:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Rozłącz się</translation>
     </message>
@@ -1129,17 +1178,17 @@ Przykład: https://server.my:8787</translation>
         <translation>Zadzwoń</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Wyślij plik</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Napisz wiadomość…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation>Naklejki</translation>
     </message>
@@ -1162,7 +1211,7 @@ Przykład: https://server.my:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Edytuj</translation>
     </message>
@@ -1182,19 +1231,19 @@ Przykład: https://server.my:8787</translation>
         <translation>Opcje</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation>&amp;Kopiuj</translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation>Kopiuj &amp;adres odnośnika</translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation>Zar&amp;eaguj</translation>
     </message>
@@ -1229,7 +1278,7 @@ Przykład: https://server.my:8787</translation>
         <translation>&amp;Przekaż dalej</translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation>&amp;Oznacz jako przeczytane</translation>
     </message>
@@ -1282,7 +1331,7 @@ Przykład: https://server.my:8787</translation>
         <translation>Otrzymano prośbę o weryfikację</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1312,7 +1361,7 @@ Przykład: https://server.my:8787</translation>
         <translation>Twoje urządzenie (%1) poprosiło o weryfikację.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Anuluj</translation>
     </message>
@@ -1386,7 +1435,7 @@ Przykład: https://server.my:8787</translation>
         <translation>Nie znaleziono mikrofonu.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Dźwięk</translation>
     </message>
@@ -1401,7 +1450,7 @@ Przykład: https://server.my:8787</translation>
         <translation>Ekran</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Anuluj</translation>
     </message>
@@ -1417,7 +1466,7 @@ Przykład: https://server.my:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Stwórz unikalny profil, który pozwoli Ci na zalogowanie się do kilku kont jednocześnie i uruchomienie wielu instancji Nheko.</translation>
     </message>
@@ -1435,7 +1484,7 @@ Przykład: https://server.my:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation>Potwierdzenia przeczytania</translation>
     </message>
@@ -1451,63 +1500,88 @@ Przykład: https://server.my:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Nazwa użytkownika</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>Nazwa użytkownika nie może być pusta i  może  zawierać wyłącznie znaki a-z, 0-9, ., _, =, -, i /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Hasło</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Wpisz swoje hasło. Dokładne wymagania dotyczące jego siły mogą zależeć od Twojego serwera.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Potwierdzenie hasła</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Serwer domowy</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Serwer, który pozwala na rejestrację. Ponieważ Matrix jest zdecentralizowany, musisz najpierw znaleźć serwer który pozwala na rejestrację bądź hostować swój własny.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Nazwa urzÄ…dzenia</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished">Nazwa dla tego urządzenia, będzie ona widoczna dla innych użytkowników, kiedy będą weryfikować Twoje urządzenia. Jeżeli żadna nie jest podana, używana jest domyślna.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>ZAREJESTRUJ</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Automatyczne odkrywanie zakończone niepowodzeniem. Otrzymano nieprawidłową odpowiedź.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation>Automatyczne odkrywanie zakończone niepowodzeniem. Napotkano nieznany błąd. .well-known.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Nie odnaleziono wymaganych interfejsów. To może nie być serwer Matrix.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation>Otrzymano nieprawidłową odpowiedź. Upewnij się, że domena homeserver-a jest prawidłowa.</translation>
     </message>
@@ -1517,25 +1591,35 @@ Przykład: https://server.my:8787</translation>
         <translation>Wystąpił nieznany błąd. Upewnij się, że domena homeserver-a jest prawidłowa.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Hasło jest zbyt krótkie (min. 8 znaków)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Hasła nie pasują do siebie</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Nieprawidłowa nazwa serwera</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Zamknij</translation>
     </message>
@@ -1548,17 +1632,17 @@ Przykład: https://server.my:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation>PrzeglÄ…daj Pokoje Publiczne</translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation>Szukaj publicznych pokojów</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1566,7 +1650,7 @@ Przykład: https://server.my:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>wersja nie została zachowana</translation>
     </message>
@@ -1614,7 +1698,7 @@ Przykład: https://server.my:8787</translation>
         <translation>Utwórz nowy tag...</translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation>Wiadomość Statusowa</translation>
     </message>
@@ -1634,7 +1718,7 @@ Przykład: https://server.my:8787</translation>
         <translation>Ustaw wiadomość statusową</translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation>Wyloguj</translation>
     </message>
@@ -1662,7 +1746,7 @@ Przykład: https://server.my:8787</translation>
         <translation type="unfinished">Zamknij</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation>Utwórz nowy czat</translation>
     </message>
@@ -1682,7 +1766,12 @@ Przykład: https://server.my:8787</translation>
         <translation>Katalog pokojów</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation>Ustawienia użytkownika</translation>
     </message>
@@ -1695,7 +1784,7 @@ Przykład: https://server.my:8787</translation>
         <translation>Obecni w %1</translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation>
@@ -1733,12 +1822,12 @@ Przykład: https://server.my:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation>Ustawienia Pokoju</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1833,6 +1922,21 @@ Przykład: https://server.my:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation>Wybież, które paczki są włączone, usuń paczki, lub utwórz nowe</translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1883,7 +1987,7 @@ Przykład: https://server.my:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation>OczekujÄ…ce zaproszenie.</translation>
     </message>
@@ -1893,7 +1997,7 @@ Przykład: https://server.my:8787</translation>
         <translation>PodglÄ…d tego pokoju</translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation>Podgląd pokoju niedostępny</translation>
     </message>
@@ -1901,7 +2005,7 @@ Przykład: https://server.my:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1983,7 +2087,7 @@ Przykład: https://server.my:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation>Błąd połączenia do menadżera sekretów</translation>
     </message>
@@ -2141,12 +2245,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation>Weryfikacja udana</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Weryfikacja udana! Obaj rozmówcy zweryfikowali swoje urządzenia!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Zamknij</translation>
     </message>
@@ -2154,7 +2258,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Cenzurowanie wiadomości nie powiodło się: %1</translation>
@@ -2272,12 +2376,27 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 został(a) zaproszona/y.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 zmienił(a) swój awatar.</translation>
     </message>
@@ -2302,32 +2421,12 @@ Reason: %4</source>
         <translation>%1 odrzucił(a) zaproszenie.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Unieważniono zaproszenie dla %1.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 opuścił(a) pokój.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>Wykopano użytkownika %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>Odbanowano użytkownika %1.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>Użytkownik %1 został zbanowany.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation>Powód: %1</translation>
     </message>
@@ -2337,12 +2436,17 @@ Reason: %4</source>
         <translation>Użytkownik %1 ocenzurował własne pukanie.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Dołączyłeś(-łaś) do tego pokoju.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation>Użytkownik %1 zmienił swojego awatara i zmienił swoją nazwę wyświetlaną na %2.</translation>
     </message>
@@ -2352,18 +2456,18 @@ Reason: %4</source>
         <translation>Użytkownik %1 zmienił swoją nazwę wyświetlaną na %2.</translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Odrzucono pukanie użytkownika %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 opuścił(a) pokój po raz kolejny!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 zapukał(a).</translation>
     </message>
@@ -2371,7 +2475,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Edytowane</translation>
     </message>
@@ -2417,17 +2521,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Wróć do listy pokoi</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Nie wybrano pokoju</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation>Ten pokój nie jest szyfrowany!</translation>
     </message>
@@ -2485,7 +2589,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Pokaż</translation>
     </message>
@@ -2498,7 +2602,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2523,7 +2627,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Globalny Profil Użytkownika</translation>
     </message>
@@ -2533,7 +2637,7 @@ Reason: %4</source>
         <translation>Profil Użytkownika Pokoju</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation>Zmień awatar globalnie.</translation>
     </message>
@@ -2543,7 +2647,7 @@ Reason: %4</source>
         <translation>Zmień awatar wyłącznie dla bieżącego pokoju.</translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation>Zmień nazwę wyświetlaną globalnie.</translation>
     </message>
@@ -2563,7 +2667,7 @@ Reason: %4</source>
         <translation>To profil specyficzny dla pokoju. Nazwa użytkownika oraz awatar mogą być inne niż globalna nazwa użytkownika i globalny awatar.</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation>Otwórz globalny profil tego użytkownika.</translation>
     </message>
@@ -2647,521 +2751,584 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>Domyślne</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
     <message>
-        <location line="+579"/>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Motyw</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Współczynnik skalowania</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Wyróżnij wiadomości gdy kursor myszy znajduje się nad nimi.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Duże emotikony w historii</translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>Zminimalizuj do paska zadań</translation>
+        <translation type="unfinished">Zminimalizuj do paska zadań</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>Rozpocznij na pasku zadań</translation>
+        <translation type="unfinished">Rozpocznij na pasku zadań</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>Pasek boczny grupy</translation>
+        <translation type="unfinished">Pasek boczny grupy</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Okrągłe awatary</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Wysyłaj wiadomości używając Markdown-u</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>profil: %1</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>Domyślny</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>POŁĄCZENIA</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation type="unfinished">Odtwarzaj animacje obrazów tylko gdy kursor myszy jest nad nimi</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Powiadomienia o pisaniu</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>POPROÅš O</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Sortuj pokoje po nieprzeczytanych wiadomościach</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>POBIERZ</translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Pokazuj przyciski w historii</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Pozostaw aplikację działającą w tle po zamknięciu okna.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation type="unfinished">Ogranicz szerokość historii</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Uruchamiaj aplikację w tle bez wyświetlania okna głównego.</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Potwierdzenia przeczytania</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Zmień wygląd awatarów w czasie.
-OFF - kwadrat, ON - koło.</translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Powiadomienia na pulpicie</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Alert podczas notyfikacji</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Pokazuj kolumnÄ™ zawierajÄ…cÄ… grupy i tagi obok listy pokoi.</translation>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Okrągłe awatary</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Odszyfruj wiadomości na pasku bocznym</translation>
+        <location line="+2"/>
+        <source>Use identicons</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Odszyfruj wiadomości na pasku bocznym.
-Dotyczy wyłącznie czatów z włączonym szyfrowaniem.</translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation type="unfinished">Odszyfruj wiadomości na pasku bocznym</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Privacy Screen</source>
-        <translation>Ekran prywatności</translation>
+        <translation type="unfinished">Ekran prywatności</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation>Kiedy okno traci fokus, historia zostanie rozmyta.</translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
-        <translation>Opóźnienie ekranu prywatności (w sekundach [0 - 3600])</translation>
+        <translation type="unfinished">Opóźnienie ekranu prywatności (w sekundach [0 - 3600])</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation>Ustaw czas (w sekundach) po którym okno zostanie rozmyte po
-stracie fokusu.
-Ustaw na 3 aby rozmywać natychmiast po stracie fokusu. Maksymalna wartość to 1 godz (3600 sekund)</translation>
+        <source>Touchscreen mode</source>
+        <translation type="unfinished">Tryb ekranu dotykowego</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Pokazuj przyciski w historii</translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation type="unfinished">Wielkość czcionki</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Pokazuj przyciski do reakcji albo dostępu do dodatkowych opcji obok każdej wiadomości.</translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Rodzina czcionki</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Ogranicz szerokość historii</translation>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Rodzina czcionki emotikon</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Ustaw maksymalną szerokość&#xa0;wiadomości w historii (w pikselach). Może to poprawić czytelność gdy Nheko zostanie zmaksymalizowany na szerokim ekranie</translation>
+        <source>Ringtone</source>
+        <translation type="unfinished">Dzwonek</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Powiadomienia o pisaniu</translation>
+        <source>Microphone</source>
+        <translation type="unfinished">Mikrofon</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>To również włączy lub wyłączy wysyłanie powiadomień o pisaniu do innych.</translation>
+        <source>Camera</source>
+        <translation type="unfinished">Kamera</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Sortuj pokoje po nieprzeczytanych wiadomościach</translation>
+        <location line="+2"/>
+        <source>Camera resolution</source>
+        <translation type="unfinished">Rozdzielczość kamery</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Wyświetlaj wiadomości z nieprzeczytanymi wiadomościami w pierwszej kolejności.
-Gdy ta opcja jest wyłączona, pokoje będą sortowane wyłącznie po znaczniku czasowym ostatniej wiadomości w pokoju.
-Gdy ta opcja jest włączona, pokoje z aktywnymi powiadomieniami (mało kółko z numerkiem w środku) będą na początku. Pokoje, które są wyciszone, będą sortowane po znaczniku czasowym, ponieważ zdaje się, że nie uważasz ich za równie wazne co pozostałe pokoje.</translation>
+        <source>Camera frame rate</source>
+        <translation type="unfinished">Ilość klatek na sekundę kamery</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Potwierdzenia przeczytania</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished">Pozwól na korzystanie z serwera pomocniczego do nawiązywania połączeń głosowych/wideo</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Pokaż czy twoja wiadomość została przeczytana.
-Status jest wyświetlany obok znacznika czasu.</translation>
+        <source>Send encrypted messages to verified users only</source>
+        <translation type="unfinished">Wysyłaj zaszyfrowane wiadomości wyłącznie do zweryfikowanych użytkowników</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Wysyłaj wiadomości używając Markdown-u</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished">Udostępnij klucze zweryfikowanym użytkownikom i urządzeniom</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Pozwól na używanie markdown-u w wiadomościach.
-Gdy ta opcja jest wyłączona, wszystkie wiadomości będą wysyłane gołym tekstem.</translation>
+        <source>Online Key Backup</source>
+        <translation type="unfinished">Backup Kluczy Online</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
-        <translation>Odtwarzaj animacje obrazów tylko gdy kursor myszy jest nad nimi</translation>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Powiadomienia na pulpicie</translation>
+        <location line="+2"/>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Powiadamiaj o odrzymanych wiadomościach gdy klient nie jest obecnie zfokusowany.</translation>
+        <source>Accesstoken</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Alert podczas notyfikacji</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">ID urzÄ…dzenia</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Pokazuj alert gdy przychodzi wiadomość.
-To zwykle sprawia, że ikona aplikacji w tacce systemowej jest animowana.</translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Odcisk palca urzÄ…dzenia</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Wyróżnij wiadomości gdy kursor myszy znajduje się nad nimi.</translation>
+        <source>Homeserver</source>
+        <translation type="unfinished">Serwer domowy</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Zmień tło wiadomości kiedy kursor myszy znajduje się nad nimi.</translation>
+        <source>Version</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Duże emotikony w historii</translation>
+        <location line="+2"/>
+        <source>Platform</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Zwiększ rozmiar czcionki gdy wiadomości zawierają tylko kilka emotikon.</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">OGÓLNE</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
-        <translation>Wysyłaj zaszyfrowane wiadomości wyłącznie do zweryfikowanych użytkowników</translation>
+        <location line="+2"/>
+        <source>TIMELINE</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
-        <translation>Wymaga zweryfikowania użytkownika zanim będzie możliwe wysłanie zaszyfrowanych wiadomości do niego. To zwiększa bezpieczeństwo, ale sprawia, że szyfrowanie E2E jest bardziej niewygodne w użyciu.</translation>
+        <source>SIDEBAR</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Udostępnij klucze zweryfikowanym użytkownikom i urządzeniom</translation>
+        <source>TRAY</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation>Automatycznie odpowiada na prośby o klucze od zweryfikowanych użytkowników, nawet gdy ci nie powinni mieć dostępu do tych kluczy.</translation>
+        <source>NOTIFICATIONS</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation>Backup Kluczy Online</translation>
+        <source>CALLS</source>
+        <translation type="unfinished">POŁĄCZENIA</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
-        <translation>Pobierz klucze szyfrowania wiadomości i umieść w szyfrowanym backup-ie kluczy online.</translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">SZYFROWANIE</translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
-        <translation>WÅ‚Ä…cz backup kluczy online</translation>
+        <location line="+2"/>
+        <source>INFO</source>
+        <translation type="unfinished">INFO</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation>Autorzy Nheko nie zalecają włączenia backup-u kluczy online dopóki symetryczny backup kluczy online nie jest dostępny. Włączyć mimo to?</translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation type="unfinished">Klucze sesji</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>ZAPISANE W CACHE-U</translation>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>NIE ZAPISANE W CACHE-U</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Współczynnik skalowania</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation type="unfinished">Klucz samo-podpisywania</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Zmień współczynnik skalowania całego interfejsu użytkownika.</translation>
+        <source>User signing key</source>
+        <translation type="unfinished">Klucz podpisywania użytkownika</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Wielkość czcionki</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation type="unfinished">Główny klucz podpisywania</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Rodzina czcionki</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Motyw</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation type="unfinished">Ustaw dźwięk powiadomienia odtwarzanego podczas zaproszenia do połączenia</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Dzwonek</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished">Ustaw maksymalną szerokość&#xa0;wiadomości w historii (w pikselach). Może to poprawić czytelność gdy Nheko zostanie zmaksymalizowany na szerokim ekranie</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Ustaw dźwięk powiadomienia odtwarzanego podczas zaproszenia do połączenia</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished">Ustaw czas (w sekundach) po którym okno zostanie rozmyte po
+stracie fokusu.
+Ustaw na 3 aby rozmywać natychmiast po stracie fokusu. Maksymalna wartość to 1 godz (3600 sekund)</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Mikrofon</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Zmień tło wiadomości kiedy kursor myszy znajduje się nad nimi.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Kamera</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">Zwiększ rozmiar czcionki gdy wiadomości zawierają tylko kilka emotikon.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Rozdzielczość kamery</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation type="unfinished">Pozostaw aplikację działającą w tle po zamknięciu okna.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Ilość klatek na sekundę kamery</translation>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation type="unfinished">Uruchamiaj aplikację w tle bez wyświetlania okna głównego.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Pozwól na korzystanie z serwera pomocniczego do nawiązywania połączeń głosowych/wideo</translation>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation type="unfinished">Pokazuj kolumnÄ™ zawierajÄ…cÄ… grupy i tagi obok listy pokoi.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>Używaj serwera pomocniczego turn.matrix.org gdy twój homeserver nie udostępnia własnego serwera pomocniczego.</translation>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">Pozwól na używanie markdown-u w wiadomościach.
+Gdy ta opcja jest wyłączona, wszystkie wiadomości będą wysyłane gołym tekstem.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>ID urzÄ…dzenia</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Odcisk palca urzÄ…dzenia</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Klucze sesji</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished">Odtwarzaj media takie jak GIF  czy WEBP tylko gdy wskazane przy użyciu myszy.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished">To również włączy lub wyłączy wysyłanie powiadomień o pisaniu do innych.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPORTUJ</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished">Wyświetlaj wiadomości z nieprzeczytanymi wiadomościami w pierwszej kolejności.
+Gdy ta opcja jest wyłączona, pokoje będą sortowane wyłącznie po znaczniku czasowym ostatniej wiadomości w pokoju.
+Gdy ta opcja jest włączona, pokoje z aktywnymi powiadomieniami (mało kółko z numerkiem w środku) będą na początku. Pokoje, które są wyciszone, będą sortowane po znaczniku czasowym, ponieważ zdaje się, że nie uważasz ich za równie wazne co pozostałe pokoje.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>EKSPORTUS</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished">Pokazuj przyciski do reakcji albo dostępu do dodatkowych opcji obok każdej wiadomości.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>SZYFROWANIE</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Pokaż czy twoja wiadomość została przeczytana.
+Status jest wyświetlany obok znacznika czasu.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>OGÓLNE</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Powiadamiaj o odrzymanych wiadomościach gdy klient nie jest obecnie zfokusowany.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Pokazuj alert gdy przychodzi wiadomość.
+To zwykle sprawia, że ikona aplikacji w tacce systemowej jest animowana.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>INTERFEJS</translation>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished">Zmień wygląd awatarów w czasie.
+OFF - kwadrat, ON - koło.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation>Odtwarzaj media takie jak GIF  czy WEBP tylko gdy wskazane przy użyciu myszy.</translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation type="unfinished">Odszyfruj wiadomości na pasku bocznym.
+Dotyczy wyłącznie czatów z włączonym szyfrowaniem.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Tryb ekranu dotykowego</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation type="unfinished">Kiedy okno traci fokus, historia zostanie rozmyta.</translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Will prevent text selection in the timeline to make touch scrolling easier.</source>
-        <translation>Zapobiega zaznaczaniu tekstu w historii rozmów by ułatwić przewijanie przy użyciu interfejsu dotykowego.</translation>
+        <translation type="unfinished">Zapobiega zaznaczaniu tekstu w historii rozmów by ułatwić przewijanie przy użyciu interfejsu dotykowego.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Rodzina czcionki emotikon</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Zmień współczynnik skalowania całego interfejsu użytkownika.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Główny klucz podpisywania</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation type="unfinished">Używaj serwera pomocniczego turn.matrix.org gdy twój homeserver nie udostępnia własnego serwera pomocniczego.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>Twój najważniejszy klucz. Nie musi być zapisany w cache-u -- nie zapisując go w cache-u zmniejszasz ryzyko, że ten klucz zostanie wykradzony. Ponadto, ten klucz jest potrzebny wyłącznie podczas odświerzania kluczy podpisywania sesji.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation type="unfinished">Wymaga zweryfikowania użytkownika zanim będzie możliwe wysłanie zaszyfrowanych wiadomości do niego. To zwiększa bezpieczeństwo, ale sprawia, że szyfrowanie E2E jest bardziej niewygodne w użyciu.</translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>Klucz podpisywania użytkownika</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation type="unfinished">Automatycznie odpowiada na prośby o klucze od zweryfikowanych użytkowników, nawet gdy ci nie powinni mieć dostępu do tych kluczy.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>Klucz używany do weryfikacji innych użytkowników. Gdy zapisany w cache-u, weryfikacja użytkownika dokona weryfikacji wszystkich jego urządzeń.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation type="unfinished">Pobierz klucze szyfrowania wiadomości i umieść w szyfrowanym backup-ie kluczy online.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation>Klucz samo-podpisywania</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation type="unfinished">Klucz służący do odszyfrowania backup-u kluczy online. Jeśli zapisany w cache-u, możesz włączyć backup kluczy online by zapisać w klucze zaszyfrowane bezpiecznie w backup-ie na serwerze.</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
-        <translation>Klucz służący do weryfikacji twoich własnych urządzeń. Jeśli zapisany w cache-u, weryfikacja jednego z twoich urządzeń sprawi, że będzie ono zweryfikowane dla wszystkich twoich pozostałych urządzeń oraz dla tych użytkowników, którzy zweryfikowali Ciebie.</translation>
+        <translation type="unfinished">Klucz służący do weryfikacji twoich własnych urządzeń. Jeśli zapisany w cache-u, weryfikacja jednego z twoich urządzeń sprawi, że będzie ono zweryfikowane dla wszystkich twoich pozostałych urządzeń oraz dla tych użytkowników, którzy zweryfikowali Ciebie.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Klucz backup-u</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation type="unfinished">Klucz używany do weryfikacji innych użytkowników. Gdy zapisany w cache-u, weryfikacja użytkownika dokona weryfikacji wszystkich jego urządzeń.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation>Klucz służący do odszyfrowania backup-u kluczy online. Jeśli zapisany w cache-u, możesz włączyć backup kluczy online by zapisać w klucze zaszyfrowane bezpiecznie w backup-ie na serwerze.</translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation type="unfinished">Twój najważniejszy klucz. Nie musi być zapisany w cache-u -- nie zapisując go w cache-u zmniejszasz ryzyko, że ten klucz zostanie wykradzony. Ponadto, ten klucz jest potrzebny wyłącznie podczas odświerzania kluczy podpisywania sesji.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
-        <translation>Wybierz plik</translation>
+        <translation type="unfinished">Wybierz plik</translation>
     </message>
     <message>
         <location line="+0"/>
         <source>All Files (*)</source>
-        <translation>Wszystkie pliki (*)</translation>
+        <translation type="unfinished">Wszystkie pliki (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Otwórz Plik Sesji</translation>
+        <translation type="unfinished">Otwórz Plik Sesji</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>BÅ‚Ä…d</translation>
+        <translation type="unfinished">BÅ‚Ä…d</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Hasło Pliku</translation>
+        <translation type="unfinished">Hasło Pliku</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Wpisz frazÄ™ do odszyfrowania pliku:</translation>
+        <translation type="unfinished">Wpisz frazÄ™ do odszyfrowania pliku:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>Hasło nie może być puste</translation>
+        <translation type="unfinished">Hasło nie może być puste</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Wpisz frazÄ™ do odszyfrowania twoich kluczy sesji:</translation>
+        <translation type="unfinished">Wpisz frazÄ™ do odszyfrowania twoich kluczy sesji:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>Plik do którego zostaną wyeksportowane klucze sesji</translation>
+        <translation type="unfinished">Plik do którego zostaną wyeksportowane klucze sesji</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>POPROÅš O</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>POBIERZ</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>ZAPISANE W CACHE-U</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>NIE ZAPISANE W CACHE-U</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPORTUJ</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>EKSPORTUS</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished">Nie znaleziono zaszyfrowanego prywatnego czatu z tym użytkownikiem. Utwórz nowy zaszyfrowany prywatny czat z tym użytkownikiem i spróbuj ponownie.</translation>
     </message>
@@ -3174,7 +3341,7 @@ To zwykle sprawia, że ikona aplikacji w tacce systemowej jest animowana.</trans
         <translation>Oczekiwanie na rozmówcę...</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Oczekiwanie za zaakceptowanie prośby o weryfikację przez rozmówcę.</translation>
     </message>
@@ -3189,7 +3356,7 @@ To zwykle sprawia, że ikona aplikacji w tacce systemowej jest animowana.</trans
         <translation>Oczekiwanie na zakończenie procesu weryfikacji przez rozmówcę.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Anuluj</translation>
     </message>
@@ -3197,22 +3364,22 @@ To zwykle sprawia, że ikona aplikacji w tacce systemowej jest animowana.</trans
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Witamy w nheko! Desktopowy klient protokołu Matrix.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Udanego pobytu!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>ZAREJESTRUJ SIĘ</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>ZALOGUJ SIĘ</translation>
     </message>
@@ -3220,7 +3387,7 @@ To zwykle sprawia, że ikona aplikacji w tacce systemowej jest animowana.</trans
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Wczoraj</translation>
     </message>
diff --git a/resources/langs/nheko_pt_BR.ts b/resources/langs/nheko_pt_BR.ts
index 781f47556..ba1c216ab 100644
--- a/resources/langs/nheko_pt_BR.ts
+++ b/resources/langs/nheko_pt_BR.ts
@@ -35,28 +35,10 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Aguardando Confirmação</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Esperando o outro lado completar a verificação.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Cancelar</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Chamada de Vídeo</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>Dispositivos</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Aceitar</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Microfone desconhecido: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Câmera desconhecida: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Rejeitar</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Nenhum microfone encontrado.</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Falha ao convidar usuário: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Usuário convidado: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Falha ao migrar cache para versão atual. Isso pode ter diferentes razões. Por favor reporte o problema e tente usar uma versão antiga no meio tempo. Alternativamente, você pode tentar excluir o cache manualmente.</translation>
     </message>
@@ -194,7 +176,7 @@
         <translation>Deseja realmente convidar %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Falha ao convidar %1 para %2: %3</translation>
     </message>
@@ -254,7 +236,7 @@
         <translation>Usuário desbanido: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Deseja realmente iniciar uma conversa privada com %1?</translation>
     </message>
@@ -317,10 +299,15 @@
         <translation>Falha ao sair da sala: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Falha ao expulsar %1 de %2: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation type="unfinished"></translation>
     </message>
@@ -429,12 +416,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation type="unfinished"></translation>
     </message>
@@ -475,7 +462,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation type="unfinished"></translation>
     </message>
@@ -523,12 +510,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -612,7 +599,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -642,7 +629,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -698,34 +742,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -735,7 +779,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -768,7 +812,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -803,7 +847,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -821,7 +865,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -834,7 +878,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished"></translation>
     </message>
@@ -868,7 +912,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished"></translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -917,7 +961,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation type="unfinished"></translation>
     </message>
@@ -927,7 +971,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation type="unfinished"></translation>
     </message>
@@ -937,26 +981,31 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -966,7 +1015,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -981,17 +1030,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1017,62 +1066,67 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+192"/>
-        <source>Encryption enabled</source>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
+        <source>%1 removed the room name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
+        <source>%1 removed the topic</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1087,27 +1141,22 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+38"/>
-        <source>Negotiating call...</source>
+        <location line="+41"/>
+        <source>%1 is negotiating the call...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-95"/>
+        <location line="-102"/>
         <source>%1 answered the call.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-148"/>
-        <source>removed</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+160"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1115,7 +1164,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1125,17 +1174,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1158,7 +1207,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1178,19 +1227,19 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1225,7 +1274,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1278,7 +1327,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1308,7 +1357,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation type="unfinished">Cancelar</translation>
     </message>
@@ -1381,7 +1430,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished">Nenhum microfone encontrado.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1396,7 +1445,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation type="unfinished">Cancelar</translation>
     </message>
@@ -1412,7 +1461,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1430,7 +1479,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1446,63 +1495,88 @@ Example: https://server.my:8787</source>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1512,25 +1586,35 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1543,17 +1627,17 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1561,7 +1645,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1609,7 +1693,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1629,7 +1713,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1657,7 +1741,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1677,7 +1761,12 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1690,7 +1779,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1727,12 +1816,12 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1825,6 +1914,21 @@ Example: https://server.my:8787</source>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1875,7 +1979,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1885,7 +1989,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1893,7 +1997,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1975,7 +2079,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2133,12 +2237,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2146,7 +2250,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished"></translation>
@@ -2263,62 +2367,57 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
-        <source>%1 changed their avatar.</source>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>%1 changed some profile info.</source>
+        <source>%2 unbanned %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+5"/>
-        <source>%1 joined.</source>
+        <source>%2 rejected the knock from %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>%1 joined via authorisation from %2&apos;s server.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+11"/>
-        <source>%1 rejected their invite.</source>
+        <location line="-35"/>
+        <source>%1 changed their avatar.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
+        <source>%1 changed some profile info.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>%1 left the room.</source>
+        <location line="+5"/>
+        <source>%1 joined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
+        <location line="+3"/>
+        <source>%1 joined via authorisation from %2&apos;s server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
+        <location line="+11"/>
+        <source>%1 rejected their invite.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
+        <location line="+5"/>
+        <source>%1 left the room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2328,12 +2427,17 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation type="unfinished">Você entrou nessa sala.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2343,18 +2447,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
+        <location line="+39"/>
+        <source>%1 left after having already left!</source>
+        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>%1 left after having already left!</source>
-        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2362,7 +2466,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2408,17 +2512,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2476,7 +2580,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2489,7 +2593,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2514,7 +2618,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2524,7 +2628,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2534,7 +2638,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2554,7 +2658,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2638,99 +2742,117 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
+        <location line="+2"/>
+        <source>Typing notifications</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
+        <location line="+2"/>
+        <source>Read receipts</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
+        <location line="+2"/>
+        <source>Alert on notification</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
+        <location line="+2"/>
+        <source>Use identicons</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
+        <source>Decrypt messages in sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -2740,301 +2862,308 @@ Only affects messages in encrypted chats.</source>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <source>Touchscreen mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
+        <location line="+2"/>
+        <source>Font size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <source>Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
+        <source>Emoji Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <source>Ringtone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
+        <source>Microphone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
+        <source>Camera</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
+        <location line="+2"/>
+        <source>Camera resolution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <source>Camera frame rate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
+        <source>Send encrypted messages to verified users only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
+        <source>Online Key Backup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Profile</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
+        <location line="+2"/>
+        <source>User ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
+        <source>Accesstoken</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
+        <location line="+2"/>
+        <source>Device ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <source>Device Fingerprint</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
+        <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
+        <source>Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
+        <location line="+2"/>
+        <source>Platform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <source>GENERAL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>TIMELINE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>SIDEBAR</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
+        <source>TRAY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
+        <source>CALLS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>ENCRYPTION</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>INFO</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
+        <location line="+2"/>
+        <source>Session Keys</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
+        <location line="+2"/>
+        <source>Online backup key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
+        <location line="+2"/>
+        <source>Self signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
+        <source>User signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
+        <location line="+2"/>
+        <source>Master signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
+        <location line="+91"/>
+        <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -3043,52 +3172,52 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3098,7 +3227,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3106,26 +3235,26 @@ This usually causes the application icon in the task bar to animate in some fash
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3140,10 +3269,48 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3156,7 +3323,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3171,7 +3338,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation type="unfinished">Cancelar</translation>
     </message>
@@ -3179,22 +3346,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3202,7 +3369,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation type="unfinished"></translation>
     </message>
diff --git a/resources/langs/nheko_pt_PT.ts b/resources/langs/nheko_pt_PT.ts
index 106d84689..6db609cfc 100644
--- a/resources/langs/nheko_pt_PT.ts
+++ b/resources/langs/nheko_pt_PT.ts
@@ -35,28 +35,10 @@
         <translation>Desativar microfone</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>A aguardar confirmação</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>A aguardar que o outro lado complete a verificação.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Cancelar</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Videochamada</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>Dispositivos</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Aceitar</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Microfone desconhecido: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Câmara desconhecida: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Recusar</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Nenhum microfone encontrado.</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Falha ao convidar utilizador: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Utilizador convidado: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>A migração da cache para a versão atual falhou, e existem várias razões possíveis. Por favor abra um problema (&quot;issue&quot;) e experimente usar uma versão mais antiga entretanto. Alternativamente, pode tentar apagar a cache manualmente.</translation>
     </message>
@@ -194,7 +176,7 @@
         <translation>Tem a certeza que quer convidar %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Falha ao convidar %1 para %2: %3</translation>
     </message>
@@ -254,7 +236,7 @@
         <translation>Utilizador perdoado: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Tem a certeza que quer começar uma conversa privada com %1?</translation>
     </message>
@@ -317,10 +299,15 @@
         <translation>Falha ao sair da sala: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Falha ao expulsar %1 de %2: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Desencriptar segredos</translation>
     </message>
@@ -429,12 +416,12 @@
         <translation>Código de verificação</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Por favor verifique os seguintes dígitos.  Deve ver os mesmos em ambos os lados. Se forem diferentes, carregue em &quot;Não coincidem!&quot; para abortar a verificação!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Não coincidem!</translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Aplicar</translation>
     </message>
@@ -475,7 +462,7 @@
         <translation>Procurar</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Pessoas</translation>
     </message>
@@ -523,12 +510,12 @@
         <translation>Código de verificação</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Por favor verifique os seguintes emojis. Deve ver os mesmos em ambos os lados. Se não coincidirem, carregue em &quot;Não coincidem!&quot; para abortar a verificação!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>Não coincidem!</translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation>Não existe nenhuma chave para desbloquear esta mensagem. Nós pedimos a chave automaticamente, mas pode tentar pedi-la outra vez se estiver impaciente.</translation>
     </message>
@@ -612,7 +599,7 @@
         <translation>Falha ao verifcar</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>O outro cliente não suporta o nosso protocolo de verificação.</translation>
     </message>
@@ -642,7 +629,7 @@
         <translation>Erro de verificação desconhecido.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Fechar</translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Reencaminhar mensagem</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished">Autocolantes</translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation>A editar pacote de imagens</translation>
     </message>
@@ -698,34 +742,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation>Chave de estado</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation>Nome do pacote</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation>Atribuição</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation>Usar como emoji</translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation>Usar como autocolante</translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation>Código</translation>
     </message>
@@ -735,7 +779,7 @@
         <translation>Corpo</translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation>Remover do pacote</translation>
     </message>
@@ -768,7 +812,7 @@
         <translation>Criar pacote de conta</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation>Criar pacote de sala</translation>
     </message>
@@ -803,7 +847,7 @@
         <translation>Editar</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation>Fechar</translation>
     </message>
@@ -821,7 +865,7 @@
         <translation>Todos os ficheiros (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Falha ao carregar mídia. Por favor, tente novamente.</translation>
     </message>
@@ -834,7 +878,7 @@
         <translation>Convidar utilizadores para %1</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation>ID do utilizador a convidar</translation>
     </message>
@@ -868,7 +912,7 @@
         <translation>Entrar na sala</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation>ID ou alcunha da sala</translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>ID Matrix</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>p. ex. @ze:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -920,7 +964,7 @@ Se o Nheko não conseguir encontrar o seu servidor, irá apresentar um campo ond
         <translation>A sua palavra-passe</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Nome do dispositivo</translation>
     </message>
@@ -930,7 +974,7 @@ Se o Nheko não conseguir encontrar o seu servidor, irá apresentar um campo ond
         <translation>Um nome para este dispositivo, que será exibido noutros quando os estiver a verificar. Caso nenhum seja fornecido, será usado um predefinido.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Endereço do servidor</translation>
     </message>
@@ -940,27 +984,32 @@ Se o Nheko não conseguir encontrar o seu servidor, irá apresentar um campo ond
         <translation>servidor.meu:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>O endereço que pode ser usado para contactar a API de clientes do seu servidor.
 Exemplo: https://servidor.meu:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>INCIAR SESSÃO</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Inseriu um ID Matrix inválido  p. ex. @ze:matrix.org</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Falha na descoberta automática. Reposta mal formatada recebida.</translation>
     </message>
@@ -970,7 +1019,7 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Falha na descoberta automática. Erro desconhecido ao solicitar &quot;.well-known&quot;.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Não foi possível encontrar os funções (&quot;endpoints&quot;) necessárias. Possivelmente não é um servidor Matrix.</translation>
     </message>
@@ -985,17 +1034,17 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Erro desconhecido. Certifique-se que o domínio do servidor é válido.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation type="unfinished">ENTRAR COM ISU (SSO)</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Palavra-passe vazia</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>Falha no ISU (SSO)</translation>
     </message>
@@ -1021,62 +1070,67 @@ Exemplo: https://servidor.meu:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+192"/>
-        <source>Encryption enabled</source>
-        <translation>Encriptação ativada</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>nome da sala alterado para: %1</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>nome da sala removido</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>tópico da sala alterado para: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>tópico da sala removido</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation>%1 alterou o ícone da sala</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 criou e configurou a sala: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 iniciou uma chamada de voz.</translation>
     </message>
@@ -1091,27 +1145,22 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>%1 iniciou uma chamada.</translation>
     </message>
     <message>
-        <location line="+38"/>
-        <source>Negotiating call...</source>
-        <translation>A negociar chamada…</translation>
+        <location line="+41"/>
+        <source>%1 is negotiating the call...</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation>Permitir a entrada</translation>
     </message>
     <message>
-        <location line="-95"/>
+        <location line="-102"/>
         <source>%1 answered the call.</source>
         <translation>%1 atendeu a chamada.</translation>
     </message>
     <message>
-        <location line="-148"/>
-        <source>removed</source>
-        <translation>removida</translation>
-    </message>
-    <message>
-        <location line="+160"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 terminou a chamada.</translation>
     </message>
@@ -1119,7 +1168,7 @@ Exemplo: https://servidor.meu:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Desligar</translation>
     </message>
@@ -1129,17 +1178,17 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Iniciar chamada</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Enviar um ficheiro</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Escreva uma mensagem…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation>Autocolantes</translation>
     </message>
@@ -1162,7 +1211,7 @@ Exemplo: https://servidor.meu:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Editar</translation>
     </message>
@@ -1182,19 +1231,19 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Opções</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation>&amp;Copiar</translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation>Copiar localização da &amp;ligação</translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation>Re&amp;agir</translation>
     </message>
@@ -1229,7 +1278,7 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Reen&amp;caminhar</translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation>&amp;Marcar como lida</translation>
     </message>
@@ -1282,7 +1331,7 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Pedido de verificação recebido</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation>Para permitir que outros utilizadores vejam que dispositivos realmente lhe pertencem, pode verificá-los. Este processo permite que a cópia de segurança das chaves funcione automaticamente. Verificar um dispositivo não verificado agora? (Por favor, certifique-se que tem um daqueles dispositivos disponíveis)</translation>
     </message>
@@ -1312,7 +1361,7 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>O seu dispositivo (%1) requisitou a sua verificação.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Cancelar</translation>
     </message>
@@ -1385,7 +1434,7 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Nenhum microfone encontrado.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Voz</translation>
     </message>
@@ -1400,7 +1449,7 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Ecrã</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Cancelar</translation>
     </message>
@@ -1416,7 +1465,7 @@ Exemplo: https://servidor.meu:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Crie um perfil único que lhe permite entrar em várias contas simultaneamente e iniciar várias instâncias do Nheko.</translation>
     </message>
@@ -1434,7 +1483,7 @@ Exemplo: https://servidor.meu:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation>Recibos de leitura</translation>
     </message>
@@ -1450,63 +1499,88 @@ Exemplo: https://servidor.meu:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Nome de utilizador</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>O nome de utilizador não pode ser vazio e tem que conter apenas os caracteres a-z, 0-9, ., _, =, - e /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Palavra-passe</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Por favor, escolha uma palavra-passe segura. Os requisitos exatos para a força da palavra-passe poderão depender no seu servidor.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Confirmação da palavra-passe</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Servidor</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Um servidor que permita registos. Uma vez que a Matrix é descentralizada, o utilizador precisa primeiro de encontrar um servidor onde se possa registar, ou alojar o seu próprio.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Nome do dispositivo</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished">Um nome para este dispositivo, que será exibido noutros quando os estiver a verificar. Caso nenhum seja fornecido, será usado um predefinido.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>REGISTAR</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Falha na descoberta automática. Resposta mal formada recebida.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation>Falha na descoberta automática. Erro desconhecido ao requisitar &quot;.well-known&quot;.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Não foi possível encontrar os funções (&quot;endpoints&quot;) necessárias. Possivelmente não é um servidor Matrix.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation>Resposta mal formada recebida. Certifique-se que o domínio do servidor está correto.</translation>
     </message>
@@ -1516,25 +1590,35 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Erro desconhecido. Certifique-se que o domínio do servidor é válido.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>A palavra-passe não é longa o suficiente (mín, 8 caracteres)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>As palavras-passe não coincidem</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Nome do servidor inválido</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Fechar</translation>
     </message>
@@ -1547,17 +1631,17 @@ Exemplo: https://servidor.meu:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation>Explorar salas públicas</translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation>Procurar por salas públicas</translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation>Escolher servidor personalizado</translation>
     </message>
@@ -1565,7 +1649,7 @@ Exemplo: https://servidor.meu:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>nenhuma versão guardada</translation>
     </message>
@@ -1613,7 +1697,7 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Criar nova etiqueta...</translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation>Mensagem de estado</translation>
     </message>
@@ -1633,7 +1717,7 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Definir mensagem de estado</translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation>Terminar sessão</translation>
     </message>
@@ -1661,7 +1745,7 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Fechar</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation>Iniciar uma nova conversa</translation>
     </message>
@@ -1681,7 +1765,12 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Diretório de salas</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation>Definições de utilizador</translation>
     </message>
@@ -1694,7 +1783,7 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>Membros de %1</translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation>
@@ -1731,12 +1820,12 @@ Exemplo: https://servidor.meu:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation>Definições de sala</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1829,6 +1918,21 @@ Exemplo: https://servidor.meu:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation>Alterar a seleção de pacotes ativos, remover e criar novos pacotes</translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1879,7 +1983,7 @@ Exemplo: https://servidor.meu:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation>Convite pendente.</translation>
     </message>
@@ -1889,7 +1993,7 @@ Exemplo: https://servidor.meu:8787</translation>
         <translation>A pré-visualizar esta sala</translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation>Pré-visualização não disponível</translation>
     </message>
@@ -1897,7 +2001,7 @@ Exemplo: https://servidor.meu:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation>Por favor, insira a sua palavra-passe para continuar:</translation>
     </message>
@@ -1979,7 +2083,7 @@ Exemplo: https://servidor.meu:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation>Falha ao ligar ao armazenamento secreto</translation>
     </message>
@@ -2139,12 +2243,12 @@ Se escolher a verificação, terá que ter o outro dispositivo disponível. Se e
         <translation>Verificação bem sucedida</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Verificação bem sucedida!  Ambos os lados verificaram os seus dispositivos!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Fechar</translation>
     </message>
@@ -2152,7 +2256,7 @@ Se escolher a verificação, terá que ter o outro dispositivo disponível. Se e
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Falha ao eliminar mensagem: %1</translation>
@@ -2269,12 +2373,27 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 foi convidado.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 alterou o seu avatar.</translation>
     </message>
@@ -2299,32 +2418,12 @@ Reason: %4</source>
         <translation>%1 recusou o seu convite.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Convite de %1 cancelado.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 saiu da sala.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>%1 foi expulso.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>%1 foi perdoado.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 foi banido.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation>Razão: %1</translation>
     </message>
@@ -2334,12 +2433,17 @@ Reason: %4</source>
         <translation>%1 eliminou a sua &quot;batida à porta&quot;.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Entrou na sala.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation>%1 alterou o seu avatar e também o seu nome de exibição para %2.</translation>
     </message>
@@ -2349,18 +2453,18 @@ Reason: %4</source>
         <translation>%1 alterou o seu nome de exibição para %2.</translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation type="unfinished">Recusada a batida de %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 saiu depois de já ter saído!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 bateu à porta.</translation>
     </message>
@@ -2368,7 +2472,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Editada</translation>
     </message>
@@ -2414,17 +2518,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Voltar à lista de salas</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Nenhuma sala selecionada</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation>Esta sala não é encriptada!</translation>
     </message>
@@ -2482,7 +2586,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Mostrar</translation>
     </message>
@@ -2495,7 +2599,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation>Nenhum processo de registo disponível!</translation>
     </message>
@@ -2520,7 +2624,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Perfil de utilizador global</translation>
     </message>
@@ -2530,7 +2634,7 @@ Reason: %4</source>
         <translation>Perfil de utilizador na sala</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation>Alterar avatar globalmente.</translation>
     </message>
@@ -2540,7 +2644,7 @@ Reason: %4</source>
         <translation>Alterar avatar. Irá apenas afetar esta sala.</translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation>Alterar nome de exibição globalmente.</translation>
     </message>
@@ -2560,7 +2664,7 @@ Reason: %4</source>
         <translation>Este é um perfil específico desta sala. O nome e avatar do utilizador poderão ser diferentes dos seus homólogos globais.</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation>Abrir o perfil global deste utilizador.</translation>
     </message>
@@ -2644,414 +2748,439 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>Predefinido</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Tema</translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Fator de escala</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Destacar mensagem quando passar o rato por cima.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Emojis grandes na cronologia</translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
         <translation type="unfinished">Minimizar para a bandeja</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
         <translation type="unfinished">Iniciar na bandeja</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>Barra lateral do grupo</translation>
+        <translation type="unfinished">Barra lateral do grupo</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Avatares circulares</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Enviar mensagens como Markdown</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>perfil: %1</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>Predefinido</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>CHAMADAS</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation type="unfinished">Reproduzir imagens animadas apenas quando lhes passar o rato por cima.</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation>Chaves de assinatura cruzada</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Notificações de escrita</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>PEDIR</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Ordenar salas por não lidas</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>DESCARREGAR</translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Mostrar botões na cronologia</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Manter a aplicação a correr em segundo plano depois de fechar a janela.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation type="unfinished">Limitar largura da cronologia</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Iniciar a aplicação em segundo plano sem mostrar a janela do cliente.</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Recibos de leitura</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Alterar a aparência de avatares de utilizador nas conversas.
-DESLIGADO - quadrados, LIGADO - circulares.</translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Notificações de ambiente de trabalho</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Alertar para notificações</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Avatares circulares</translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Use identicons</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Mostrar uma coluna contendo grupos e etiquetas ao lado da lista de salas.</translation>
+        <location line="+2"/>
+        <source>Decrypt messages in sidebar</source>
+        <translation type="unfinished">Desencriptar mensagens na barra lateral</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Desencriptar mensagens na barra lateral</translation>
+        <location line="+2"/>
+        <source>Privacy Screen</source>
+        <translation type="unfinished">Ecrã de privacidade</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Desencriptar mensagens exibidas na barra lateral.
-Apenas afeta mensagens em conversas encriptadas.</translation>
+        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
+        <translation type="unfinished">Tempo de inatividade para ecrã de privacidade (em segundos [0 - 3600])</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Privacy Screen</source>
-        <translation>Ecrã de privacidade</translation>
+        <source>Touchscreen mode</source>
+        <translation type="unfinished">Modo de toque</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation>Quando a janela perde a atenção, a cronologia 
-será desfocada.</translation>
+        <source>Font size</source>
+        <translation type="unfinished">Tamanho da letra</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
-        <translation>Tempo de inatividade para ecrã de privacidade (em segundos [0 - 3600])</translation>
+        <location line="+2"/>
+        <source>Font Family</source>
+        <translation type="unfinished">Tipo de letra</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation>Definir tempo (em segundos) depois da janela perder a 
-atenção até que o ecrã seja desfocado.
-Defina como 0 para desfocar imediatamente após perder a atenção. Valor máximo de 1 hora (3600 segundos)</translation>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Tipo de letra para emoji</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Mostrar botões na cronologia</translation>
+        <location line="+2"/>
+        <source>Ringtone</source>
+        <translation type="unfinished">Toque</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Mostrar botões para resposta rápida, reações ou acesso a opções adicionais junto de cada mensagem.</translation>
+        <source>Microphone</source>
+        <translation type="unfinished">Microfone</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Limitar largura da cronologia</translation>
+        <source>Camera</source>
+        <translation type="unfinished">Câmara</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Definir largura máxima das mensagens na cronologia (em pixeis). Isto pode ajudar na legibilidade em ecrãs largos, quando o Nheko está maximizado.</translation>
+        <source>Camera resolution</source>
+        <translation type="unfinished">Resolução de câmara</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Notificações de escrita</translation>
+        <source>Camera frame rate</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Mostrar quem está a escrever numa sala.
-Irá também ativar ou desativar o envio de notificações de escrita para outros.</translation>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished">Permitir servidor assistente de chamada</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Ordenar salas por não lidas</translation>
+        <location line="+2"/>
+        <source>Send encrypted messages to verified users only</source>
+        <translation type="unfinished">Enviar mensagens encriptadas apenas a utilizadores verificados</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Exibe salas com novas mensagens primeiro.
-Se desativada, a lista de salas será apenas ordenada pela data da última mensagem de cada sala.
-Se ativada, salas com notificações ativas (pequeno círculo com um número dentro) serão ordenadas no topo. Salas silenciadas continuarão a ser ordenadas por data, visto que não são consideradas tão importantes como as outras.</translation>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished">Partilhar chaves com utilizadores e dispositivos verificados</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Recibos de leitura</translation>
+        <location line="+2"/>
+        <source>Online Key Backup</source>
+        <translation type="unfinished">Cópia de segurança de chave online</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Mostrar se a sua mensagem foi lida.
-Estado exibido ao lado da data.</translation>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Enviar mensagens como Markdown</translation>
+        <location line="+2"/>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Permitir Markdown em mensagens.
-Quando desativada, todas as mensagens serão enviadas em texto simples.</translation>
+        <source>Accesstoken</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
-        <translation type="unfinished">Reproduzir imagens animadas apenas quando lhes passar o rato por cima.</translation>
+        <source>Device ID</source>
+        <translation type="unfinished">ID do dispositivo</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Notificações de ambiente de trabalho</translation>
+        <location line="+2"/>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Impressão digital do dispositivo</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Notificar sobre mensagens recebidas quando o cliente não está focado.</translation>
+        <source>Homeserver</source>
+        <translation type="unfinished">Servidor</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Alertar para notificações</translation>
+        <location line="+2"/>
+        <source>Version</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Mostrar alerta quando é recebida uma mensagem.</translation>
+        <source>Platform</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Destacar mensagem quando passar o rato por cima.</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">GERAL</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Alterar a cor de fundo das mensagens quando passar o rato por cima.</translation>
+        <source>TIMELINE</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Emojis grandes na cronologia</translation>
+        <location line="+2"/>
+        <source>SIDEBAR</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Aumentar tamanho do tipo de letra quando apenas alguns emojis são exibidos.</translation>
+        <source>TRAY</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
-        <translation>Enviar mensagens encriptadas apenas a utilizadores verificados</translation>
+        <location line="+2"/>
+        <source>NOTIFICATIONS</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
-        <translation>Exigir que um utilizador esteja verificado para lhe enviar mensagens encriptadas. Isto melhora a segurança mas torna a encriptação mais entediante.</translation>
+        <source>CALLS</source>
+        <translation type="unfinished">CHAMADAS</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Partilhar chaves com utilizadores e dispositivos verificados</translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">ENCRIPTAÇÃO</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation>Automaticamente responde a pedidos de chaves de outros utilizadores, se estiverem verificados, mesmo que de outra forma o dispositivo não deveria ter acesso a essas chaves.</translation>
+        <source>INFO</source>
+        <translation type="unfinished">INFO</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation>Cópia de segurança de chave online</translation>
+        <source>Session Keys</source>
+        <translation type="unfinished">Chave de sessão</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>Cross Signing Secrets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
-        <translation>Ativar cópia de segurança de chave online</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation>Os autores do Nheko recomendam não ativar a cópia de segurança de chave online até que a cópia simétrica esteja disponível. Deseja ativar ainda assim?</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation type="unfinished">Chave de auto-assinatura.</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>ARMAZENADO EM CACHE</translation>
+        <location line="+2"/>
+        <source>User signing key</source>
+        <translation type="unfinished">Chave de assinatura de utilizador</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>NÃO ARMAZENADO EM CACHE</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation type="unfinished">Chave de assinatura mestra</translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Fator de escala</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished">Predefinido</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Alterar o fator de escala para toda a interface.</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation type="unfinished">Tocar o som de notificação quando chegar um convite de chamada</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Tamanho da letra</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished">Definir largura máxima das mensagens na cronologia (em pixeis). Isto pode ajudar na legibilidade em ecrãs largos, quando o Nheko está maximizado.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Tipo de letra</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished">Definir tempo (em segundos) depois da janela perder a 
+atenção até que o ecrã seja desfocado.
+Defina como 0 para desfocar imediatamente após perder a atenção. Valor máximo de 1 hora (3600 segundos)</translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Tema</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Alterar a cor de fundo das mensagens quando passar o rato por cima.</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Toque</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">Aumentar tamanho do tipo de letra quando apenas alguns emojis são exibidos.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Tocar o som de notificação quando chegar um convite de chamada</translation>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation type="unfinished">Manter a aplicação a correr em segundo plano depois de fechar a janela.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Microfone</translation>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation type="unfinished">Iniciar a aplicação em segundo plano sem mostrar a janela do cliente.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Câmara</translation>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation type="unfinished">Mostrar uma coluna contendo grupos e etiquetas ao lado da lista de salas.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Resolução de câmara</translation>
+        <location line="+2"/>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">Permitir Markdown em mensagens.
+Quando desativada, todas as mensagens serão enviadas em texto simples.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
+        <location line="+4"/>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Permitir servidor assistente de chamada</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation type="unfinished"></translation>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished">Reproduzir média como GIFs e WEBPs apenas quando passar o cursor explicitamente por cima.</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Device ID</source>
-        <translation>ID do dispositivo</translation>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished">Mostrar quem está a escrever numa sala.
+Irá também ativar ou desativar o envio de notificações de escrita para outros.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Impressão digital do dispositivo</translation>
+        <location line="+4"/>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished">Exibe salas com novas mensagens primeiro.
+Se desativada, a lista de salas será apenas ordenada pela data da última mensagem de cada sala.
+Se ativada, salas com notificações ativas (pequeno círculo com um número dentro) serão ordenadas no topo. Salas silenciadas continuarão a ser ordenadas por data, visto que não são consideradas tão importantes como as outras.</translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Chave de sessão</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished">Mostrar botões para resposta rápida, reações ou acesso a opções adicionais junto de cada mensagem.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPORTAR</translation>
-    </message>
-    <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>EXPORTAR</translation>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Mostrar se a sua mensagem foi lida.
+Estado exibido ao lado da data.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>ENCRIPTAÇÃO</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Notificar sobre mensagens recebidas quando o cliente não está focado.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>GERAL</translation>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Mostrar alerta quando é recebida uma mensagem.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>INTERFACE</translation>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished">Alterar a aparência de avatares de utilizador nas conversas.
+DESLIGADO - quadrados, LIGADO - circulares.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation>Reproduzir média como GIFs e WEBPs apenas quando passar o cursor explicitamente por cima.</translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation type="unfinished">Desencriptar mensagens exibidas na barra lateral.
+Apenas afeta mensagens em conversas encriptadas.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Modo de toque</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation type="unfinished">Quando a janela perde a atenção, a cronologia 
+será desfocada.</translation>
     </message>
     <message>
         <location line="+2"/>
@@ -3059,107 +3188,145 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Tipo de letra para emoji</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Alterar o fator de escala para toda a interface.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Chave de assinatura mestra</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>A sua chave mais importante. Não necessita de a armazenar na cache, visto que será menos provável que seja roubada e só é necessária para rodar as outras chaves de assinatura.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation type="unfinished">Exigir que um utilizador esteja verificado para lhe enviar mensagens encriptadas. Isto melhora a segurança mas torna a encriptação mais entediante.</translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>Chave de assinatura de utilizador</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation type="unfinished">Automaticamente responde a pedidos de chaves de outros utilizadores, se estiverem verificados, mesmo que de outra forma o dispositivo não deveria ter acesso a essas chaves.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>A chave para verificar outros utilizadores. Se armazenada em cache, verificar um utilizador irá verificar todos os seus dispositivos.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation type="unfinished">Chave de auto-assinatura.</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
-        <translation>A chave para verificar os seus dispositivos. Se armazenada em cache, verificar um dos seus dispositivos irá marcá-lo como tal para todos os seus outros dispositivos e utilizadores que o tenham verificado.</translation>
+        <translation type="unfinished">A chave para verificar os seus dispositivos. Se armazenada em cache, verificar um dos seus dispositivos irá marcá-lo como tal para todos os seus outros dispositivos e utilizadores que o tenham verificado.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Chave de cópia de segurança</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation type="unfinished">A chave para verificar outros utilizadores. Se armazenada em cache, verificar um utilizador irá verificar todos os seus dispositivos.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation type="unfinished"></translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation type="unfinished">A sua chave mais importante. Não necessita de a armazenar na cache, visto que será menos provável que seja roubada e só é necessária para rodar as outras chaves de assinatura.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
-        <translation>Selecionar um ficheiro</translation>
+        <translation type="unfinished">Selecionar um ficheiro</translation>
     </message>
     <message>
         <location line="+0"/>
         <source>All Files (*)</source>
-        <translation>Todos os ficheiros (*)</translation>
+        <translation type="unfinished">Todos os ficheiros (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Abrir ficheiro de sessões</translation>
+        <translation type="unfinished">Abrir ficheiro de sessões</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Erro</translation>
+        <translation type="unfinished">Erro</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Palavra-passe do ficheiro</translation>
+        <translation type="unfinished">Palavra-passe do ficheiro</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Insira a palavra-passe para desencriptar o ficheiro:</translation>
+        <translation type="unfinished">Insira a palavra-passe para desencriptar o ficheiro:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>A palavra-passe não pode estar vazia</translation>
+        <translation type="unfinished">A palavra-passe não pode estar vazia</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Insira a palavra-passe para encriptar as suas chaves de sessão:</translation>
+        <translation type="unfinished">Insira a palavra-passe para encriptar as suas chaves de sessão:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>Ficheiro onde guardar as chaves de sessão exportadas</translation>
+        <translation type="unfinished">Ficheiro onde guardar as chaves de sessão exportadas</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>PEDIR</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>DESCARREGAR</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>ARMAZENADO EM CACHE</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>NÃO ARMAZENADO EM CACHE</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPORTAR</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>EXPORTAR</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation>Não foi encontrada nenhuma conversa privada e encriptada com este utilizador. Crie uma e tente novamente.</translation>
     </message>
@@ -3172,7 +3339,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3187,7 +3354,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Cancelar</translation>
     </message>
@@ -3195,22 +3362,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Bem-vindo(a) ao Nheko! Um cliente de computador para o protocolo Matrix.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation type="unfinished">REGISTAR</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation type="unfinished">INCIAR SESSÃO</translation>
     </message>
@@ -3218,7 +3385,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Ontem</translation>
     </message>
diff --git a/resources/langs/nheko_ro.ts b/resources/langs/nheko_ro.ts
index c144366b9..60854a5f4 100644
--- a/resources/langs/nheko_ro.ts
+++ b/resources/langs/nheko_ro.ts
@@ -35,28 +35,10 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -74,7 +56,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation type="unfinished"></translation>
     </message>
@@ -107,27 +89,27 @@
         <translation type="unfinished">Dispozitive</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation type="unfinished">Acceptare</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation type="unfinished">Refuzare</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -143,18 +125,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Nu s-a putut invita utilizatorul: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Utilizator invitat: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Nu s-a putut muta cache-ul pe versiunea curentă. Acest lucru poate avea diferite cauze. Vă rugăm să deschideți un issue și încercați să folosiți o versiune mai veche între timp. O altă opțiune ar fi să încercați să ștergeți cache-ul manual.</translation>
     </message>
@@ -195,7 +177,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Nu s-a putut invita %1 în %2: %3</translation>
     </message>
@@ -255,7 +237,7 @@
         <translation>Utilizator dezinterzis: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -318,10 +300,15 @@
         <translation>Nu s-a putut părăsi camera: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -397,7 +384,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation type="unfinished"></translation>
     </message>
@@ -430,12 +417,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -448,7 +435,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Aplicare</translation>
     </message>
@@ -476,7 +463,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation type="unfinished"></translation>
     </message>
@@ -524,12 +511,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -542,7 +529,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -613,7 +600,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -643,7 +630,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation type="unfinished">ÃŽnchide</translation>
     </message>
@@ -651,15 +638,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -699,34 +743,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -736,7 +780,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -769,7 +813,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -804,7 +848,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished">ÃŽnchide</translation>
     </message>
@@ -822,7 +866,7 @@
         <translation type="unfinished">Toate fișierele (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -835,7 +879,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished">IDul utilizatorului de invitat</translation>
     </message>
@@ -869,7 +913,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished">IDul camerei sau alias</translation>
     </message>
@@ -890,17 +934,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>ID Matrix</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>ex. @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -921,7 +965,7 @@ Dacă Nheko nu vă poate găsi homeserverul, vă va arăta un câmp pentru intro
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Nume dispozitiv</translation>
     </message>
@@ -931,7 +975,7 @@ Dacă Nheko nu vă poate găsi homeserverul, vă va arăta un câmp pentru intro
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation type="unfinished"></translation>
     </message>
@@ -941,27 +985,32 @@ Dacă Nheko nu vă poate găsi homeserverul, vă va arăta un câmp pentru intro
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>Adresa la care se poate contacta APIul homeserverului dumneavoastră.
 Exemplu: https://serverul.meu:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>CONECTARE</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Autodescoperirea a eșuat. Răspunsul primit este defectuos.</translation>
     </message>
@@ -971,7 +1020,7 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation>Autodescoperirea a eșuat. Eroare necunoscută la solicitarea .well-known.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Punctele finale necesare nu au fost găsite. Posibil a nu fi un server Matrix.</translation>
     </message>
@@ -986,17 +1035,17 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation>A apărut o eroare necunoscută. Verificați ca domeniul homeserverului să fie valid.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>CONECTARE SSO</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Parolă necompletată</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>Conectarea SSO a eșuat</translation>
     </message>
@@ -1022,67 +1071,67 @@ Exemplu: https://serverul.meu:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
-        <translation>Criptare activată</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>numele camerei schimbat la: %1</translation>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>numele camerei șters</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>subiect schimbat la: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>subiect șters</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 a creat și configurat camera: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1097,22 +1146,22 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation>%1 a răspuns apelului.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 a închis apelul.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1120,7 +1169,7 @@ Exemplu: https://serverul.meu:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1130,17 +1179,17 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1163,7 +1212,7 @@ Exemplu: https://serverul.meu:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1183,19 +1232,19 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished">Opțiuni</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1230,7 +1279,7 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1283,7 +1332,7 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1313,7 +1362,7 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1386,7 +1435,7 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1401,7 +1450,7 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1417,7 +1466,7 @@ Exemplu: https://serverul.meu:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1435,7 +1484,7 @@ Exemplu: https://serverul.meu:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished">Confirmări de citire</translation>
     </message>
@@ -1451,63 +1500,88 @@ Exemplu: https://serverul.meu:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Nume de utilizator</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>Numele de utilizator nu poate fi gol, și trebuie să conțină doar caracterele a-z, 0-9, ., =, - și /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Parolă</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Vă rugăm să alegeți o parolă sigură. Cerințele necesare pentru rezistența parolei pot depinde de serverul dumneavoastră.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Confirmare parolă</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Homeserver</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Un server care permite înregistrarea. Deoarece Matrix este decentralizat, trebuie să găsiți un server pe care să vă înregistrați sau să vă găzduiți propriul server.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Nume dispozitiv</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>ÃŽNREGISTRARE</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished">Autodescoperirea a eșuat. Răspunsul primit este defectuos.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished">Autodescoperirea a eșuat. Eroare necunoscută la solicitarea .well-known.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished">Punctele finale necesare nu au fost găsite. Posibil a nu fi un server Matrix.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished">Răspuns eronat primit. Verificați ca domeniul homeserverului să fie valid.</translation>
     </message>
@@ -1517,25 +1591,35 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished">A apărut o eroare necunoscută. Verificați ca domeniul homeserverului să fie valid.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Parola nu este destul de lungă (minim 8 caractere)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Parolele nu se potrivesc</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Nume server invalid</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation type="unfinished">ÃŽnchide</translation>
     </message>
@@ -1548,17 +1632,17 @@ Exemplu: https://serverul.meu:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1566,7 +1650,7 @@ Exemplu: https://serverul.meu:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>nicio versiune stocată</translation>
     </message>
@@ -1614,7 +1698,7 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1634,7 +1718,7 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished">Deconectare</translation>
     </message>
@@ -1662,7 +1746,7 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished">ÃŽnchide</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished">Începe o nouă conversație</translation>
     </message>
@@ -1682,7 +1766,12 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished">Registru de camere</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished">Setări utilizator</translation>
     </message>
@@ -1695,7 +1784,7 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1733,12 +1822,12 @@ Exemplu: https://serverul.meu:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1832,6 +1921,21 @@ Exemplu: https://serverul.meu:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1882,7 +1986,7 @@ Exemplu: https://serverul.meu:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1892,7 +1996,7 @@ Exemplu: https://serverul.meu:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1900,7 +2004,7 @@ Exemplu: https://serverul.meu:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1982,7 +2086,7 @@ Exemplu: https://serverul.meu:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2140,12 +2244,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation type="unfinished">ÃŽnchide</translation>
     </message>
@@ -2153,7 +2257,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Redactare mesaj eșuată: %1</translation>
@@ -2271,12 +2375,27 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 a fost invitat(ă).</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 și-a schimbat avatarul.</translation>
     </message>
@@ -2301,32 +2420,12 @@ Reason: %4</source>
         <translation>%1 a respins invitația.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Invitația utilizatorului %1 revocată.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 a părăsit camera.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>%1 a fost dat(ă) afară.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>%1 repermis(ă).</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 a fost interzis(ă).</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2336,12 +2435,17 @@ Reason: %4</source>
         <translation>%1 și-a redactat ciocănitul.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Te-ai alăturat camerei.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2351,18 +2455,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Ciocănit refuzat de la %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 a părăsit camera după ce a părăsit-o deja înainte!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 a ciocănit.</translation>
     </message>
@@ -2370,7 +2474,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2416,17 +2520,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2484,7 +2588,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Arată</translation>
     </message>
@@ -2497,7 +2601,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2522,7 +2626,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2532,7 +2636,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2542,7 +2646,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2562,7 +2666,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2646,403 +2750,428 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Temă</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Factor de dimensiune</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Scoate mesajul în evidență când se trece cu mouseul peste</translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Emoji mari în cronologie</translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>Minimizează în bara de notificări</translation>
+        <translation type="unfinished">Minimizează în bara de notificări</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>Pornește în bara de notificări</translation>
+        <translation type="unfinished">Pornește în bara de notificări</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>Bara laterală a grupului</translation>
+        <translation type="unfinished">Bara laterală a grupului</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Avatare rotunde</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Trimite mesaje ca Markdown</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Notificări de scriere</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Sortează camerele după necitite</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Arată butoanele în cronologie</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Confirmări de citire</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Notificări desktop</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Alertă la notificare</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Avatare rotunde</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Use identicons</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+2"/>
         <source>Decrypt messages in sidebar</source>
-        <translation>Decriptează mesajele din bara laterală</translation>
+        <translation type="unfinished">Decriptează mesajele din bara laterală</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
+        <source>Privacy Screen</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Privacy Screen</source>
+        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
+        <source>Touchscreen mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation type="unfinished">Dimensiunea fontului</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation type="unfinished"></translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Familie de font</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Arată butoanele în cronologie</translation>
+        <location line="+2"/>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Familia de font pentru Emoji</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <source>Ringtone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
+        <source>Microphone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <source>Camera</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Notificări de scriere</translation>
+        <source>Camera resolution</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
+        <source>Camera frame rate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Sortează camerele după necitite</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <source>Send encrypted messages to verified users only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Confirmări de citire</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Vezi dacă mesajul tău a fost citit. Starea este afișată lângă timestampuri.</translation>
+        <source>Online Key Backup</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Trimite mesaje ca Markdown</translation>
+        <location line="+2"/>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Permite folosirea markdown în mesaje. Când este dezactivată, mesajele sunt trimise ca text simplu.</translation>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Accesstoken</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Notificări desktop</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">ID Dispozitiv</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Trimite o notificare despre mesajele primite când clientul nu este în prim plan.</translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Amprentă Dispozitiv</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Alertă la notificare</translation>
+        <location line="+2"/>
+        <source>Homeserver</source>
+        <translation type="unfinished">Homeserver</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Arată o alertă când primiți un mesaj. Deobicei pictograma aplicației se animează în taskbar.</translation>
+        <source>Version</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Scoate mesajul în evidență când se trece cu mouseul peste</translation>
+        <source>Platform</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Schimbă culoarea de fundal a mesajelor când se trece cu mouseul peste.</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">GENERAL</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Emoji mari în cronologie</translation>
+        <location line="+2"/>
+        <source>TIMELINE</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Mărește fontul mesajelor dacă doar câteva emojiuri sunt afișate.</translation>
+        <source>SIDEBAR</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>TRAY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
+        <source>CALLS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation type="unfinished"></translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">CRIPTARE</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
+        <source>INFO</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>Session Keys</source>
+        <translation type="unfinished">Chei de sesiune</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>Online backup key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
+        <location line="+2"/>
+        <source>Self signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
+        <location line="+2"/>
+        <source>User signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
+        <location line="+2"/>
+        <source>Master signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Factor de dimensiune</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Schimbă dimensiunea întregii interfețe.</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Dimensiunea fontului</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Familie de font</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Temă</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Schimbă culoarea de fundal a mesajelor când se trece cu mouseul peste.</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">Mărește fontul mesajelor dacă doar câteva emojiuri sunt afișate.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
+        <source>Keep the application running in the background after closing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">Permite folosirea markdown în mesaje. Când este dezactivată, mesajele sunt trimise ca text simplu.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
+        <location line="+4"/>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Device ID</source>
-        <translation>ID Dispozitiv</translation>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Amprentă Dispozitiv</translation>
+        <location line="+4"/>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Chei de sesiune</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPORTARE</translation>
-    </message>
-    <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>EXPORTARE</translation>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Vezi dacă mesajul tău a fost citit. Starea este afișată lângă timestampuri.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>CRIPTARE</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Trimite o notificare despre mesajele primite când clientul nu este în prim plan.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>GENERAL</translation>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Arată o alertă când primiți un mesaj. Deobicei pictograma aplicației se animează în taskbar.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>INTERFAȚĂ</translation>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -3051,52 +3180,52 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Familia de font pentru Emoji</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Schimbă dimensiunea întregii interfețe.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3106,52 +3235,90 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished">Toate fișierele (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Deschide fișierul de sesiuni</translation>
+        <translation type="unfinished">Deschide fișierul de sesiuni</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Eroare</translation>
+        <translation type="unfinished">Eroare</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Parolă fișier</translation>
+        <translation type="unfinished">Parolă fișier</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Introduceți parola pentru a decripta fișierul:</translation>
+        <translation type="unfinished">Introduceți parola pentru a decripta fișierul:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>Parola nu poate fi necompletată</translation>
+        <translation type="unfinished">Parola nu poate fi necompletată</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Introduceți parola pentru criptarea cheilor de sesiune:</translation>
+        <translation type="unfinished">Introduceți parola pentru criptarea cheilor de sesiune:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>Fișier pentru salvarea cheilor de sesiune exportate</translation>
+        <translation type="unfinished">Fișier pentru salvarea cheilor de sesiune exportate</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPORTARE</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>EXPORTARE</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3164,7 +3331,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3179,7 +3346,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3187,22 +3354,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Bine ați venit în nheko! Clientul desktop pentru protocolul Matrix.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Ședere plăcută!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>ÃŽNREGISTRARE</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>CONECTARE</translation>
     </message>
@@ -3210,7 +3377,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Ieri</translation>
     </message>
diff --git a/resources/langs/nheko_ru.ts b/resources/langs/nheko_ru.ts
index b754565dc..697cec2cf 100644
--- a/resources/langs/nheko_ru.ts
+++ b/resources/langs/nheko_ru.ts
@@ -35,28 +35,10 @@
         <translation>Выключить Микрофон</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Ожидание Подтверждения</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Ожидание подтверждения у собеседника.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Отмена</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -74,7 +56,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Видео Звонок</translation>
     </message>
@@ -107,27 +89,27 @@
         <translation>Устройства</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Принять</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Неизвестный микрофон: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Неизвестная камера: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Отказаться</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Микрофон не найден.</translation>
     </message>
@@ -143,18 +125,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Не удалось пригласить пользователя: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Приглашенный пользователь: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Миграция кэша для текущей версии не удалась. Это может происходить по разным причинам. Пожалуйста сообщите о проблеме и попробуйте временно использовать старую версию. Так-же вы можете попробовать удалить кэш самостоятельно.</translation>
     </message>
@@ -195,7 +177,7 @@
         <translation>Вы точно хотите пригласить %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Не удалось пригласить %1 в %2: %3</translation>
     </message>
@@ -255,7 +237,7 @@
         <translation>Разблокированный пользователь: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation>Вы действительно хотите начать личную переписку с %1?</translation>
     </message>
@@ -318,10 +300,15 @@
         <translation>Не удалось покинуть комнату: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation>Не удалось выгнать %1 из %2: %3</translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -397,7 +384,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Расшифровать секреты</translation>
     </message>
@@ -430,12 +417,12 @@
         <translation>Код для Верификации</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Пожалуйста сверьте следующие цифры. Вы должны увидеть одинаковые числа у себя и у собеседника. Если они разные, пожалуйста нажмите &apos;Они не совпадают!&apos; для отмены верификации!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Они не совпадают!</translation>
     </message>
@@ -448,7 +435,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Применить</translation>
     </message>
@@ -476,7 +463,7 @@
         <translation>Поиск</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Люди</translation>
     </message>
@@ -524,12 +511,12 @@
         <translation>Код Верификации</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Пожалуйста сверьте данные эмоджи. Вы должны видеть одинаковые эможди у себя и у собеседника. Если они разные, пожалуйста нажмите &apos; Они не совпадают!&apos; для отмены верификации!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>Они не совпадают!</translation>
     </message>
@@ -542,7 +529,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -613,7 +600,7 @@
         <translation>Верификация не удалась</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>Другой клиент не поддерживает наш протокол верификации.</translation>
     </message>
@@ -643,7 +630,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Закрыть</translation>
     </message>
@@ -651,15 +638,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation>Переслать Сообщение</translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -699,34 +743,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -736,7 +780,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -769,7 +813,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -804,7 +848,7 @@
         <translation type="unfinished">Редактировать</translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished">Закрыть</translation>
     </message>
@@ -822,7 +866,7 @@
         <translation>Все файлы (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Не удалось загрузить медиа. Пожалуйста попробуйте ещё раз</translation>
     </message>
@@ -835,7 +879,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished">Идентификатор пользователя</translation>
     </message>
@@ -869,7 +913,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished">Идентификатор или псевдоним комнаты</translation>
     </message>
@@ -890,17 +934,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Идентификатор Matrix</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>Пример: @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -921,7 +965,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation>Ваш пароль.</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Имя устройства</translation>
     </message>
@@ -931,7 +975,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation>Имя устройства, которое будет отображаться для других, когда верифицируют ваше устройство. Если не предоставить имя устройста,то будет использоваться имя по умолчанию.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation>Адрес домашнего сервера</translation>
     </message>
@@ -941,27 +985,32 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation>server.my:8787</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>Адрес который будет использоваться для связи клиентского API вашего домашнего сервера.
 Пример: https://server.my:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>ВОЙТИ</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation>Вы ввели не правильный Matrix ID, @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Автообноружение не удалось. Получен поврежденный ответ.</translation>
     </message>
@@ -971,7 +1020,7 @@ Example: https://server.my:8787</source>
         <translation>Автообноружение не удалось. Не известаня ошибка во время запроса .well-known.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Необходимые конечные точки не найдены. Возможно, это не сервер Matrix.</translation>
     </message>
@@ -986,17 +1035,17 @@ Example: https://server.my:8787</source>
         <translation>Произошла неизвестная ошибка. Убедитесь, что домен homeserver действителен.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>SSO ВХОД</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Пустой пароль</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>SSO вход не удался</translation>
     </message>
@@ -1022,67 +1071,67 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
-        <translation>убрано</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
-        <translation>Шифрование включено</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>имя комнаты изменено на: %1</translation>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>название комнаты убрано</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>тема изменена на: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>тема убрана</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 создал и настроил комнату: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 начал голосовой звонок.</translation>
     </message>
@@ -1097,22 +1146,22 @@ Example: https://server.my:8787</source>
         <translation>%1 начал вызов.</translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation>%1 ответил на звонок.</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 завершил вызов.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
-        <translation>Совершение звонка...</translation>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1120,7 +1169,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Завершить звонок</translation>
     </message>
@@ -1130,17 +1179,17 @@ Example: https://server.my:8787</source>
         <translation>Позвонить</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Отправить файл</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Написать сообщение…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1163,7 +1212,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation>Редактировать</translation>
     </message>
@@ -1183,19 +1232,19 @@ Example: https://server.my:8787</source>
         <translation>Опции</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1230,7 +1279,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1283,7 +1332,7 @@ Example: https://server.my:8787</source>
         <translation>Получен Запрос Верификации</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1313,7 +1362,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Отмена</translation>
     </message>
@@ -1386,7 +1435,7 @@ Example: https://server.my:8787</source>
         <translation>Микрофон не найден.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Голос</translation>
     </message>
@@ -1401,7 +1450,7 @@ Example: https://server.my:8787</source>
         <translation>Экран</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Отмена</translation>
     </message>
@@ -1417,7 +1466,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Создать уникальный профиль, который позволяет вести несколько аккаунтов и запускать множество сущностей nheko. </translation>
     </message>
@@ -1435,7 +1484,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished">Просмотр получателей</translation>
     </message>
@@ -1451,63 +1500,88 @@ Example: https://server.my:8787</source>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Имя пользователя</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>Имя пользователя не должно быть пустым и должно содержать только символы a-z, 0-9, ., _, =, -, и /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Пароль</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Пожалуйста выбирите надежный пароль. Надёжность пароля, влияет на безопасность сервера.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Подтверждение пароля</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Домашний сервер</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>Сервер разрешающий регистрацию.Поскольку matrix децентрализованный, нужно выбрать сервер где вы можете зарегистрироваться или поднимите свой сервер.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Имя устройства</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished">Имя устройства, которое будет отображаться для других, когда верифицируют ваше устройство. Если не предоставить имя устройста,то будет использоваться имя по умолчанию.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>РЕГИСТРАЦИЯ</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished">Автообноружение не удалось. Получен поврежденный ответ.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished">Автообноружение не удалось. Не известаня ошибка во время запроса .well-known.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished">Необходимые конечные точки не найдены. Возможно, это не сервер Matrix.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished">Получен неверный ответ. Убедитесь, что домен homeserver действителен.</translation>
     </message>
@@ -1517,25 +1591,35 @@ Example: https://server.my:8787</source>
         <translation type="unfinished">Произошла неизвестная ошибка. Убедитесь, что домен homeserver действителен.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Слишком короткий пароль (минимум 8 символов)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Пароли не совпадают</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Неверное имя сервера</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Закрыть</translation>
     </message>
@@ -1548,17 +1632,17 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1566,7 +1650,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>нет сохраненной версии</translation>
     </message>
@@ -1614,7 +1698,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1634,7 +1718,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished">Выйти</translation>
     </message>
@@ -1662,7 +1746,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished">Закрыть</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished">Начать новый чат</translation>
     </message>
@@ -1682,7 +1766,12 @@ Example: https://server.my:8787</source>
         <translation type="unfinished">Каталог комнат</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished">Пользовательские настройки</translation>
     </message>
@@ -1695,7 +1784,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1733,12 +1822,12 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation>Настройки комнаты</translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1832,6 +1921,21 @@ Example: https://server.my:8787</source>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1882,7 +1986,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1892,7 +1996,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1900,7 +2004,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1982,7 +2086,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2140,12 +2244,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation>Верификация прошла успешно</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Верификация прошла успешно! Обе стороны верефицировали свои устройства!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Закрыть</translation>
     </message>
@@ -2153,7 +2257,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Ошибка редактирования сообщения: %1</translation>
@@ -2271,12 +2375,27 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 был приглашен.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 поменял свой аватар.</translation>
     </message>
@@ -2301,32 +2420,12 @@ Reason: %4</source>
         <translation>%1 отклонил приглашение.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Приглашение для %1 отменено.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 покинул комнату.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>%1 был выгнан.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>Разблокирован %1.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 был заблокирован.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2336,12 +2435,17 @@ Reason: %4</source>
         <translation>%1 отредактировал его &quot;стук&quot;.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Вы присоединились к этой комнате.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2351,18 +2455,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Отверг &quot;стук&quot; от %1</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 покинул чат, после того, как уже его покинул.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 постучался.</translation>
     </message>
@@ -2370,7 +2474,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation>Изменено</translation>
     </message>
@@ -2416,17 +2520,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Вернуться к списку комнат</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Комнаты не выбраны</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2484,7 +2588,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Показать</translation>
     </message>
@@ -2497,7 +2601,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2522,7 +2626,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation>Глобальный Пользовательский Профиль</translation>
     </message>
@@ -2532,7 +2636,7 @@ Reason: %4</source>
         <translation>Поользовательский Профиль в Комнате</translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2542,7 +2646,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2562,7 +2666,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2646,518 +2750,580 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation>По умолчанию</translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
     <message>
-        <location line="+579"/>
-        <source>Minimize to tray</source>
-        <translation>Сворачивать в системную панель</translation>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Тема</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start in tray</source>
-        <translation>Запускать в системной панели</translation>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Масштаб</translation>
     </message>
     <message>
-        <location line="+10"/>
-        <source>Group&apos;s sidebar</source>
-        <translation>Боковая панель групп</translation>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Подсвечивать сообщение на панели</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Округлый Аватар</translation>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Большие эмоджи в таймлайне</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>профиль: %1</translation>
+        <location line="+2"/>
+        <source>Minimize to tray</source>
+        <translation type="unfinished">Сворачивать в системную панель</translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
-        <translation>По умолчанию</translation>
+        <location line="+2"/>
+        <source>Start in tray</source>
+        <translation type="unfinished">Запускать в системной панели</translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>ЗВОНКИ</translation>
+        <location line="+2"/>
+        <source>Group&apos;s sidebar</source>
+        <translation type="unfinished">Боковая панель групп</translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Посылать сообщение в формате Markdown</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>ЗАПРОС</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>СКАЧАТЬ</translation>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Держать приложение запущенным в фоне, после закрытия окна.</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Запускать приложение в фоне, без открытия окна.</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">Сообщать о наборе сообщения</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Поменять отображение пользовательского аватара в чатах. ВЫКЛ - квадратный, ВКЛ - округлый.</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Сортировать комнату по непрочитанным</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Отображать кнопки в таймлайне</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Отображать колонку содержащую группы и тэги рядом со списком комнаты.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation type="unfinished">Ограничить ширину таймлайна</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Дешифровывать сообщение в сайдбаре</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Просмотр получателей</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Дешифровывать сообщение отображающиеся в сайдбаре. Действует только на шифрованные чаты.</translation>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Уведомления на рабочем столе</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Privacy Screen</source>
-        <translation>Приватное Окно</translation>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Предупреждать о уведомлении</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation type="unfinished"></translation>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Округлый Аватар</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
+        <location line="+2"/>
+        <source>Use identicons</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation type="unfinished"></translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation type="unfinished">Дешифровывать сообщение в сайдбаре</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Отображать кнопки в таймлайне</translation>
+        <location line="+2"/>
+        <source>Privacy Screen</source>
+        <translation type="unfinished">Приватное Окно</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Отображать кнопки быстрого ответа, реакции или предоставления дополнительных опций рядом с каждым сообщением.</translation>
+        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Ограничить ширину таймлайна</translation>
+        <source>Touchscreen mode</source>
+        <translation type="unfinished">Сенсорный режим</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Установить максимальную ширину сообщений в таймлайне (в пикселях). Это может повысить читаемость на широких экранах, когда Nheko в полноэкранном режиме.</translation>
+        <source>Font size</source>
+        <translation type="unfinished">Размер шрифта</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>Сообщать о наборе сообщения</translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Семья Шрифта</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Отображать кто печатает в комнате.</translation>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Семья шрифта эмоджи</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Сортировать комнату по непрочитанным</translation>
+        <location line="+2"/>
+        <source>Ringtone</source>
+        <translation type="unfinished">Мелодия Звонка</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Отображать сначала комнаты с новыми сообщениями.
-Если это выключено, список комнат будет отсортировать по времени последнего сообщения в комнате.
-Если это включено, комнаты в которых включены уведомления (маленькие кружки с числами) буду отсортированы на верху. Комнаты, которые вы заглушили, будут отсортированы по времени, пока вы не сделаете их важнее чем другие комнаты.</translation>
+        <source>Microphone</source>
+        <translation type="unfinished">Микрофон</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Просмотр получателей</translation>
+        <location line="+2"/>
+        <source>Camera</source>
+        <translation type="unfinished">Камера</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Показывать, если ваше сообщение было прочитано.
-Стату отображается за временем сообщения.</translation>
+        <source>Camera resolution</source>
+        <translation type="unfinished">Разрешение Камеры</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Посылать сообщение в формате Markdown</translation>
+        <location line="+2"/>
+        <source>Camera frame rate</source>
+        <translation type="unfinished">Частота смены кадров для камеры</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Разрешить использовать markdown в сообщениях.
-Когда выключено, все сообщения посылаются как обычный текст.</translation>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished">Разрешить помощь резервного сервера для звонков</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Send encrypted messages to verified users only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Уведомления на рабочем столе</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished">Делиться ключами с проверенными участниками и устройствами</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Предупреждать о получании сообщение, когда приложение не выбрано.</translation>
+        <source>Online Key Backup</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Предупреждать о уведомлении</translation>
+        <location line="+2"/>
+        <source>Profile</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Показывать предупреждение, когда получено сообщеение.
-На это обычно реагирует иконка приложения в таскбаре.</translation>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Подсвечивать сообщение на панели</translation>
+        <source>Accesstoken</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Поменять цвет фона сообщения, когда вы навели курсор над ним.</translation>
+        <source>Device ID</source>
+        <translation type="unfinished">ID устройства</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Большие эмоджи в таймлайне</translation>
+        <location line="+2"/>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Отпечаток устройства</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Делать шрифт больше, если сообщения содержать только несколько эмоджи.</translation>
+        <source>Homeserver</source>
+        <translation type="unfinished">Домашний сервер</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>Platform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Делиться ключами с проверенными участниками и устройствами</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">ГЛАВНОЕ</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <source>TIMELINE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
+        <source>SIDEBAR</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>TRAY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>CALLS</source>
+        <translation type="unfinished">ЗВОНКИ</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>Закешировано</translation>
+        <location line="+2"/>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">ШИФРОВАНИЕ</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>НЕ ЗАКЕШИРОВАНО</translation>
+        <location line="+2"/>
+        <source>INFO</source>
+        <translation type="unfinished">ИНФОРМАЦИЯ</translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Масштаб</translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation type="unfinished">Ключи сеанса</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Поменять коэфициент масштаба для всего пользовательского интерфейса.</translation>
+        <source>Cross Signing Secrets</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Размер шрифта</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Семья Шрифта</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Тема</translation>
+        <location line="+2"/>
+        <source>User signing key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Мелодия Звонка</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished">По умолчанию</translation>
+    </message>
+    <message>
+        <location line="+33"/>
         <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Установить звук уведомления, когда получено приглашение для звонка.</translation>
+        <translation type="unfinished">Установить звук уведомления, когда получено приглашение для звонка.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Микрофон</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished">Установить максимальную ширину сообщений в таймлайне (в пикселях). Это может повысить читаемость на широких экранах, когда Nheko в полноэкранном режиме.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Камера</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Разрешение Камеры</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Поменять цвет фона сообщения, когда вы навели курсор над ним.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Частота смены кадров для камеры</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">Делать шрифт больше, если сообщения содержать только несколько эмоджи.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Разрешить помощь резервного сервера для звонков</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation type="unfinished">Держать приложение запущенным в фоне, после закрытия окна.</translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation type="unfinished">Запускать приложение в фоне, без открытия окна.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>Будет использован turn.matrix.org для помощи, когда вам домашний сервер не позволяет.</translation>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation type="unfinished">Отображать колонку содержащую группы и тэги рядом со списком комнаты.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">Разрешить использовать markdown в сообщениях.
+Когда выключено, все сообщения посылаются как обычный текст.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>ID устройства</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Отпечаток устройства</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Ключи сеанса</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished">Отображать кто печатает в комнате.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>ИМПОРТИРОВАТЬ</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished">Отображать сначала комнаты с новыми сообщениями.
+Если это выключено, список комнат будет отсортировать по времени последнего сообщения в комнате.
+Если это включено, комнаты в которых включены уведомления (маленькие кружки с числами) буду отсортированы на верху. Комнаты, которые вы заглушили, будут отсортированы по времени, пока вы не сделаете их важнее чем другие комнаты.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>ЭКСПОРТИРОВАТЬ</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished">Отображать кнопки быстрого ответа, реакции или предоставления дополнительных опций рядом с каждым сообщением.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>ШИФРОВАНИЕ</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Показывать, если ваше сообщение было прочитано.
+Стату отображается за временем сообщения.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>ГЛАВНОЕ</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Предупреждать о получании сообщение, когда приложение не выбрано.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Показывать предупреждение, когда получено сообщеение.
+На это обычно реагирует иконка приложения в таскбаре.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>ИНТЕРФЕЙС</translation>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished">Поменять отображение пользовательского аватара в чатах. ВЫКЛ - квадратный, ВКЛ - округлый.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation type="unfinished">Дешифровывать сообщение отображающиеся в сайдбаре. Действует только на шифрованные чаты.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Сенсорный режим</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Will prevent text selection in the timeline to make touch scrolling easier.</source>
-        <translation>Будет прерывать выделение текста в таймлайне, чтобы сделать перелистывание косанием проще.</translation>
+        <translation type="unfinished">Будет прерывать выделение текста в таймлайне, чтобы сделать перелистывание косанием проще.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Семья шрифта эмоджи</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Поменять коэфициент масштаба для всего пользовательского интерфейса.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation type="unfinished">Будет использован turn.matrix.org для помощи, когда вам домашний сервер не позволяет.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Ключ восстановления</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
-        <translation>Выберите файл</translation>
+        <translation type="unfinished">Выберите файл</translation>
     </message>
     <message>
         <location line="+0"/>
         <source>All Files (*)</source>
-        <translation>Все файлы (*)</translation>
+        <translation type="unfinished">Все файлы (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Открыть файл сеансов</translation>
+        <translation type="unfinished">Открыть файл сеансов</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Ошибка</translation>
+        <translation type="unfinished">Ошибка</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translatorcomment>Или введите пароль?</translatorcomment>
-        <translation>Пароль файла</translation>
+        <translation type="unfinished">Пароль файла</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Введите парольную фразу для расшифрования файла:</translation>
+        <translation type="unfinished">Введите парольную фразу для расшифрования файла:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>Пароль не может быть пустым</translation>
+        <translation type="unfinished">Пароль не может быть пустым</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Введите ключевую фразу для шифрования ключей сеанса:</translation>
+        <translation type="unfinished">Введите ключевую фразу для шифрования ключей сеанса:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>Файл для сохранения экспортированных ключей сеанса</translation>
+        <translation type="unfinished">Файл для сохранения экспортированных ключей сеанса</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>ЗАПРОС</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>СКАЧАТЬ</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>Закешировано</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>НЕ ЗАКЕШИРОВАНО</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>ИМПОРТИРОВАТЬ</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>ЭКСПОРТИРОВАТЬ</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished">Не найдено личного чата с этим пользователем. Создайте зашифрованный личный чат с этим пользователем и попытайтесь еще раз.</translation>
     </message>
@@ -3170,7 +3336,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Ожидание подтверждения запроса верификации другой стороной.</translation>
     </message>
@@ -3185,7 +3351,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation>Ожидание другой стороны, для завершение верификационного процесса.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Отмена</translation>
     </message>
@@ -3193,22 +3359,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Добро пожаловать в nheko, клиент для протокола Matrix!</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Приятного времяпрепровождения!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>РЕГИСТРАЦИЯ</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>ВХОД</translation>
     </message>
@@ -3216,7 +3382,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Вчера</translation>
     </message>
diff --git a/resources/langs/nheko_si.ts b/resources/langs/nheko_si.ts
index 17d8d5a33..2d1948ed6 100644
--- a/resources/langs/nheko_si.ts
+++ b/resources/langs/nheko_si.ts
@@ -35,28 +35,10 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation type="unfinished"></translation>
     </message>
@@ -106,27 +88,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -194,7 +176,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
@@ -254,7 +236,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -317,10 +299,15 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation type="unfinished"></translation>
     </message>
@@ -429,12 +416,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation type="unfinished"></translation>
     </message>
@@ -475,7 +462,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation type="unfinished"></translation>
     </message>
@@ -523,12 +510,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -612,7 +599,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -642,7 +629,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -698,34 +742,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -735,7 +779,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -768,7 +812,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -803,7 +847,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -821,7 +865,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -834,7 +878,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished"></translation>
     </message>
@@ -868,7 +912,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished"></translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -917,7 +961,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation type="unfinished"></translation>
     </message>
@@ -927,7 +971,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation type="unfinished"></translation>
     </message>
@@ -937,26 +981,31 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -966,7 +1015,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -981,17 +1030,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1017,67 +1066,67 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
+        <source>%1 removed the room name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
+        <source>%1 removed the topic</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1092,22 +1141,22 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1115,7 +1164,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1125,17 +1174,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1158,7 +1207,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1178,19 +1227,19 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1225,7 +1274,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1278,7 +1327,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1308,7 +1357,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1381,7 +1430,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1396,7 +1445,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1412,7 +1461,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1430,7 +1479,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1446,63 +1495,88 @@ Example: https://server.my:8787</source>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1512,25 +1586,35 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
+        <location line="+25"/>
+        <source>Invalid username.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1543,17 +1627,17 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1561,7 +1645,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1609,7 +1693,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1629,7 +1713,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1657,7 +1741,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1677,7 +1761,12 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1690,7 +1779,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1727,12 +1816,12 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1825,6 +1914,21 @@ Example: https://server.my:8787</source>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1875,7 +1979,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1885,7 +1989,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1893,7 +1997,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1975,7 +2079,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2133,12 +2237,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2146,7 +2250,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished"></translation>
@@ -2263,62 +2367,57 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
-        <source>%1 changed their avatar.</source>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>%1 changed some profile info.</source>
+        <source>%2 unbanned %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+5"/>
-        <source>%1 joined.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+3"/>
-        <source>%1 joined via authorisation from %2&apos;s server.</source>
+        <source>%2 rejected the knock from %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>%1 rejected their invite.</source>
+        <location line="-35"/>
+        <source>%1 changed their avatar.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
+        <source>%1 changed some profile info.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>%1 left the room.</source>
+        <location line="+5"/>
+        <source>%1 joined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
+        <location line="+3"/>
+        <source>%1 joined via authorisation from %2&apos;s server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
+        <location line="+11"/>
+        <source>%1 rejected their invite.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
+        <location line="+5"/>
+        <source>%1 left the room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2328,12 +2427,17 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2343,18 +2447,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
+        <location line="+39"/>
+        <source>%1 left after having already left!</source>
+        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>%1 left after having already left!</source>
-        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2362,7 +2466,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2408,17 +2512,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2476,7 +2580,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2489,7 +2593,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2514,7 +2618,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2524,7 +2628,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2534,7 +2638,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2554,7 +2658,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2638,99 +2742,117 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
+        <location line="+2"/>
+        <source>Typing notifications</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
+        <location line="+2"/>
+        <source>Read receipts</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
+        <location line="+2"/>
+        <source>Alert on notification</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
+        <location line="+2"/>
+        <source>Use identicons</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
+        <source>Decrypt messages in sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -2740,301 +2862,308 @@ Only affects messages in encrypted chats.</source>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <source>Touchscreen mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
+        <location line="+2"/>
+        <source>Font size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <source>Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
+        <source>Emoji Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <source>Ringtone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
+        <source>Microphone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
+        <source>Camera</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
+        <location line="+2"/>
+        <source>Camera resolution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <source>Camera frame rate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
+        <source>Send encrypted messages to verified users only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
+        <source>Online Key Backup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Profile</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
+        <location line="+2"/>
+        <source>User ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
+        <source>Accesstoken</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
+        <location line="+2"/>
+        <source>Device ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <source>Device Fingerprint</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
+        <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
+        <source>Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
+        <location line="+2"/>
+        <source>Platform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <source>GENERAL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>TIMELINE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>SIDEBAR</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
+        <source>TRAY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
+        <source>CALLS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>ENCRYPTION</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>INFO</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
+        <location line="+2"/>
+        <source>Session Keys</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
+        <location line="+2"/>
+        <source>Online backup key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
+        <location line="+2"/>
+        <source>Self signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
+        <source>User signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
+        <location line="+2"/>
+        <source>Master signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
+        <location line="+91"/>
+        <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -3043,52 +3172,52 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3098,7 +3227,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3106,26 +3235,26 @@ This usually causes the application icon in the task bar to animate in some fash
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3140,10 +3269,48 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3156,7 +3323,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3171,7 +3338,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3179,22 +3346,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3202,7 +3369,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation type="unfinished"></translation>
     </message>
diff --git a/resources/langs/nheko_sv.ts b/resources/langs/nheko_sv.ts
index 8a537e2b6..8e4dbf1d3 100644
--- a/resources/langs/nheko_sv.ts
+++ b/resources/langs/nheko_sv.ts
@@ -35,28 +35,10 @@
         <translation>Stäng av mikrofonen</translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>Inväntar Bekräftelse</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>Väntar på att motparten ska slutföra verifikationen.</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>Avbryt</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -73,7 +55,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>Videosamtal</translation>
     </message>
@@ -106,27 +88,27 @@
         <translation>Enheter</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation>Godkänn</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>Okänd mikrofon: %1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>Okänd kamera: %1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation>Neka</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation>Ingen mikrofon hittad.</translation>
     </message>
@@ -142,18 +124,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>Kunde inte bjuda in användare: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>Bjöd in användare: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>Kunde inte migrera cachen till den nuvarande versionen. Detta kan bero på flera anledningar, vänligen rapportera problemet och prova en äldre version under tiden. Du kan också försöka att manuellt radera cachen.</translation>
     </message>
@@ -194,7 +176,7 @@
         <translation>Är du säker på att du vill bjuda in %1 (%2)?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation>Kunde inte bjuda in %1 till %2: %3</translation>
     </message>
@@ -254,7 +236,7 @@
         <translation>Hävde bannlysningen av användare: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -317,10 +299,15 @@
         <translation>Kunde inte lämna rum: %1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -396,7 +383,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation>Dekryptera hemliga nycklar</translation>
     </message>
@@ -429,12 +416,12 @@
         <translation>Verifikationskod</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Vänligen bekräfta följande siffror.  Samma siffror ska visas på bägge sidor. Stämmer siffrorna inte överens, vänligen tryck på &apos;Siffrorna överensstämmer inte!&apos; för att avbryta verifikationen!</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation>Siffrorna överensstämmer inte!</translation>
     </message>
@@ -447,7 +434,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>Tillämpa</translation>
     </message>
@@ -475,7 +462,7 @@
         <translation>Sök</translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation>Personer</translation>
     </message>
@@ -523,12 +510,12 @@
         <translation>Verifikationskod</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation>Vänligen bekräfta följande emoji. Samma emoji ska visas på bägge sidor. Stämmer de inte överens, vänligen tryck på &apos;De överensstämmer inte!&apos; för att avbryta verifikationen!</translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation>De överensstämmer inte!</translation>
     </message>
@@ -541,7 +528,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -612,7 +599,7 @@
         <translation>Verifikation misslyckades</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation>Motpartens klient stödjer inte vårt verifikationsprotokoll.</translation>
     </message>
@@ -642,7 +629,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation>Stäng</translation>
     </message>
@@ -650,15 +637,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -698,34 +742,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -735,7 +779,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -768,7 +812,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -803,7 +847,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished">Stäng</translation>
     </message>
@@ -821,7 +865,7 @@
         <translation>Alla Filer (*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation>Kunde inte ladda upp media. Vänligen försök igen.</translation>
     </message>
@@ -834,7 +878,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished">Användar-ID att bjuda in</translation>
     </message>
@@ -868,7 +912,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished">Rum-ID eller alias</translation>
     </message>
@@ -889,17 +933,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation>Matrix-ID</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>t.ex. @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -920,7 +964,7 @@ Om Nheko inte kan hitta din hemserver automatiskt kommer ett fält dyka upp där
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>Enhetsnamn</translation>
     </message>
@@ -930,7 +974,7 @@ Om Nheko inte kan hitta din hemserver automatiskt kommer ett fält dyka upp där
         <translation>Ett namn för denna enhet. Namnet kommer synas för andra när du verifierar dina enheter. Om du inte förser ett namn kommer ett standardnamn användas.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation type="unfinished"></translation>
     </message>
@@ -940,27 +984,32 @@ Om Nheko inte kan hitta din hemserver automatiskt kommer ett fält dyka upp där
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation>Addressen som kan användas för att kontakta din hemservers klient-API.
 Exempel: https://server.my:8787</translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>INLOGGNING</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation>Autouppslag misslyckades. Mottog felkonstruerat svar.</translation>
     </message>
@@ -970,7 +1019,7 @@ Exempel: https://server.my:8787</translation>
         <translation>Autouppslag misslyckades. Okänt fel uppstod vid begäran av .well-known.</translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>Kunde inte hitta de nödvändiga ändpunkterna. Möjligtvis inte en Matrix-server.</translation>
     </message>
@@ -985,17 +1034,17 @@ Exempel: https://server.my:8787</translation>
         <translation>Ett okänt fel uppstod. Se till att hemserver-domänen är giltig.</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation>SSO INLOGGNING</translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>Tomt lösenord</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation>SSO-inloggning misslyckades</translation>
     </message>
@@ -1021,62 +1070,67 @@ Exempel: https://server.my:8787</translation>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+192"/>
-        <source>Encryption enabled</source>
-        <translation>Kryptering aktiverad</translation>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
-        <translation>rummets namn ändrat till: %1</translation>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
-        <translation>tog bort rummets namn</translation>
+        <source>%1 removed the room name</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
-        <translation>ämne ändrat till: %1</translation>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
-        <translation>tog bort ämne</translation>
+        <source>%1 removed the topic</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation>%1 skapade och konfigurerade rum: %2</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation>%1 påbörjade ett röstsamtal.</translation>
     </message>
@@ -1091,27 +1145,22 @@ Exempel: https://server.my:8787</translation>
         <translation>%1 påbörjade ett samtal.</translation>
     </message>
     <message>
-        <location line="+38"/>
-        <source>Negotiating call...</source>
-        <translation>Förhandlar samtal…</translation>
+        <location line="+41"/>
+        <source>%1 is negotiating the call...</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-95"/>
+        <location line="-102"/>
         <source>%1 answered the call.</source>
         <translation>%1 besvarade samtalet.</translation>
     </message>
     <message>
-        <location line="-148"/>
-        <source>removed</source>
-        <translation>borttagen</translation>
-    </message>
-    <message>
-        <location line="+160"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation>%1 avslutade samtalet.</translation>
     </message>
@@ -1119,7 +1168,7 @@ Exempel: https://server.my:8787</translation>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation>Lägg på</translation>
     </message>
@@ -1129,17 +1178,17 @@ Exempel: https://server.my:8787</translation>
         <translation>Ring upp</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation>Skicka en fil</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>Skriv ett meddelande…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1162,7 +1211,7 @@ Exempel: https://server.my:8787</translation>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1182,19 +1231,19 @@ Exempel: https://server.my:8787</translation>
         <translation type="unfinished">Alternativ</translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1229,7 +1278,7 @@ Exempel: https://server.my:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1282,7 +1331,7 @@ Exempel: https://server.my:8787</translation>
         <translation>Mottog Verifikationsförfrågan</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1312,7 +1361,7 @@ Exempel: https://server.my:8787</translation>
         <translation>Din enhet (%1) har begärt att bli verifierad.</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>Avbryt</translation>
     </message>
@@ -1385,7 +1434,7 @@ Exempel: https://server.my:8787</translation>
         <translation>Ingen mikrofon kunde hittas.</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation>Röst</translation>
     </message>
@@ -1400,7 +1449,7 @@ Exempel: https://server.my:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation>Avbryt</translation>
     </message>
@@ -1416,7 +1465,7 @@ Exempel: https://server.my:8787</translation>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation>Skapa en unik profil, vilket tillåter dig att logga in på flera konton samtidigt och starta flera instanser av Nheko.</translation>
     </message>
@@ -1434,7 +1483,7 @@ Exempel: https://server.my:8787</translation>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished">Läskvitton</translation>
     </message>
@@ -1450,63 +1499,88 @@ Exempel: https://server.my:8787</translation>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>Användarnamn</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation>Användarnamnet kan inte vara tomt, och måste enbart innehålla tecknen a-z, 0-9, ., _, =, -, och /.</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>Lösenord</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation>Vänligen välj ett säkert lösenord. De specifika kraven för lösenordsstyrka kan variera beroende på din hemserver.</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>Bekräfta lösenord</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation>Hemserver</translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation>En server som tillåter registrering. Eftersom matrix är decentraliserat behöver du först hitta en server du kan registrera dig på, eller upprätta en på egen hand.</translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">Enhetsnamn</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished">Ett namn för denna enhet. Namnet kommer synas för andra när du verifierar dina enheter. Om du inte förser ett namn kommer ett standardnamn användas.</translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>REGISTRERA</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished">Autouppslag misslyckades. Mottog felkonstruerat svar.</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished">Autouppslag misslyckades. Okänt fel uppstod vid begäran av .well-known.</translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished">Kunde inte hitta de nödvändiga ändpunkterna. Möjligtvis inte en Matrix-server.</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished">Mottog felkonstruerat svar. Se till att hemserver-domänen är giltig.</translation>
     </message>
@@ -1516,25 +1590,35 @@ Exempel: https://server.my:8787</translation>
         <translation type="unfinished">Ett okänt fel uppstod. Se till att hemserver-domänen är giltig.</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>Lösenordet är inte långt nog (minst 8 tecken)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>Lösenorden stämmer inte överens</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>Ogiltigt servernamn</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation>Stäng</translation>
     </message>
@@ -1547,17 +1631,17 @@ Exempel: https://server.my:8787</translation>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1565,7 +1649,7 @@ Exempel: https://server.my:8787</translation>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation>ingen version lagrad</translation>
     </message>
@@ -1613,7 +1697,7 @@ Exempel: https://server.my:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1633,7 +1717,7 @@ Exempel: https://server.my:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished">Logga ut</translation>
     </message>
@@ -1661,7 +1745,7 @@ Exempel: https://server.my:8787</translation>
         <translation type="unfinished">Stäng</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished">Starta en ny chatt</translation>
     </message>
@@ -1681,7 +1765,12 @@ Exempel: https://server.my:8787</translation>
         <translation type="unfinished">Rumkatalog</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished">Användarinställningar</translation>
     </message>
@@ -1694,7 +1783,7 @@ Exempel: https://server.my:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1731,12 +1820,12 @@ Exempel: https://server.my:8787</translation>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1829,6 +1918,21 @@ Exempel: https://server.my:8787</translation>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1879,7 +1983,7 @@ Exempel: https://server.my:8787</translation>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1889,7 +1993,7 @@ Exempel: https://server.my:8787</translation>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1897,7 +2001,7 @@ Exempel: https://server.my:8787</translation>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1979,7 +2083,7 @@ Exempel: https://server.my:8787</translation>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2137,12 +2241,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation>Lyckad verifikation</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation>Verifikationen lyckades!  Bägge sidor verifierade sina enheter!</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation>Stäng</translation>
     </message>
@@ -2150,7 +2254,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation>Kunde inte maskera meddelande: %1</translation>
@@ -2267,12 +2371,27 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
-        <translation>%1 blev inbjuden.</translation>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%2 unbanned %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>%2 rejected the knock from %1.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-35"/>
         <source>%1 changed their avatar.</source>
         <translation>%1 ändrade sin avatar.</translation>
     </message>
@@ -2297,32 +2416,12 @@ Reason: %4</source>
         <translation>%1 avvisade sin inbjudan.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
-        <translation>Ã…terkallade inbjudan till %1.</translation>
-    </message>
-    <message>
-        <location line="+3"/>
+        <location line="+5"/>
         <source>%1 left the room.</source>
         <translation>%1 lämnade rummet.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
-        <translation>Sparkade ut %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
-        <translation>Upphävde bannlysningen av %1.</translation>
-    </message>
-    <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
-        <translation>%1 blev bannlyst.</translation>
-    </message>
-    <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2332,12 +2431,17 @@ Reason: %4</source>
         <translation>%1 maskerade sin knackning.</translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation>Du gick med i detta rum.</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2347,18 +2451,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
-        <translation>Avvisade knackningen från %1.</translation>
-    </message>
-    <message>
-        <location line="+2"/>
+        <location line="+39"/>
         <source>%1 left after having already left!</source>
         <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation>%1 lämnade efter att redan ha lämnat!</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation>%1 knackade.</translation>
     </message>
@@ -2366,7 +2470,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2412,17 +2516,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation>Tillbaka till rumlista</translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation>Inget rum markerat</translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2480,7 +2584,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>Visa</translation>
     </message>
@@ -2493,7 +2597,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2518,7 +2622,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2528,7 +2632,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2538,7 +2642,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2558,7 +2662,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2642,102 +2746,118 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
     <message>
-        <location line="+579"/>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">Tema</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished">Storleksfaktor</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished">Markera meddelande vid hållande av muspekare</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished">Stor Emoji i tidslinje</translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>Minimera till systemtråg</translation>
+        <translation type="unfinished">Minimera till systemtråg</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>Starta i systemtråg</translation>
+        <translation type="unfinished">Starta i systemtråg</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>Gruppens sidofält</translation>
+        <translation type="unfinished">Gruppens sidofält</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
-        <translation>Cirkulära avatarer</translation>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
+        <translation type="unfinished">Skicka meddelanden som Markdown</translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
-        <translation>profil: %1</translation>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
-        <translation>SAMTAL</translation>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation>Korssigneringsnycklar</translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">&quot;Skriver&quot;-notifikationer</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
-        <translation>BEGÄRAN</translation>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
+        <translation type="unfinished">Sortera rum efter olästa</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
-        <translation>LADDA NED</translation>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
+        <translation type="unfinished">Visa knappar i tidslinje</translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
-        <translation>Håll applikationen igång i bakgrunden efter att ha stängt klienten.</translation>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
+        <translation type="unfinished">Begränsa bredd av tidslinje</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation>Starta applikationen i bakgrunden utan att visa klienten.</translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">Läskvitton</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
-        <translation>Ändra utseendet av användaravatarer i chattar.
-AV - Kvadrat, PÃ… - Cirkel.</translation>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">Skrivbordsnotifikationer</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Alert on notification</source>
+        <translation type="unfinished">Notis vid notifikation</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
-        <translation>Visa en kolumn innehållande grupper och taggar bredvid listan över rum.</translation>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
+        <translation type="unfinished">Cirkulära avatarer</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Decrypt messages in sidebar</source>
-        <translation>Dekryptera meddelanden i sidofält</translation>
+        <location line="+2"/>
+        <source>Use identicons</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
-        <translation>Dekryptera meddelanden visade i sidofältet.
-PÃ¥verkar endast krypterade chattar.</translation>
+        <source>Decrypt messages in sidebar</source>
+        <translation type="unfinished">Dekryptera meddelanden i sidofält</translation>
     </message>
     <message>
         <location line="+2"/>
@@ -2746,416 +2866,463 @@ PÃ¥verkar endast krypterade chattar.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+1"/>
         <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
-        <translation type="unfinished"></translation>
+        <source>Touchscreen mode</source>
+        <translation type="unfinished">Touchskärmsläge</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
-        <translation>Visa knappar i tidslinje</translation>
+        <location line="+2"/>
+        <source>Font size</source>
+        <translation type="unfinished">Fontstorlek</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
-        <translation>Visa knappar för att enkelt svara, reagera eller komma åt ytterligare alternativ bredvid varje meddelande.</translation>
+        <source>Font Family</source>
+        <translation type="unfinished">Font-familj</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
-        <translation>Begränsa bredd av tidslinje</translation>
+        <source>Emoji Font Family</source>
+        <translation type="unfinished">Emoji font-familj</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
-        <translation>Ställ in maximal bredd av meddelanden i tidslinjen (i pixlar). Detta kan förbättra läsligheten på breda skärmar när Nheko är maximerat.</translation>
+        <source>Ringtone</source>
+        <translation type="unfinished">Ringsignal</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>&quot;Skriver&quot;-notifikationer</translation>
+        <source>Microphone</source>
+        <translation type="unfinished">Mikrofon</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
-        <translation>Visa vem som skriver i ett rum.
-Denna inställning avgör också huruvida notifikation skickas till andra när du skriver.</translation>
+        <source>Camera</source>
+        <translation type="unfinished">Kamera</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
-        <translation>Sortera rum efter olästa</translation>
+        <location line="+2"/>
+        <source>Camera resolution</source>
+        <translation type="unfinished">Kameraupplösning</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
-        <translation>Visa rum med nya meddelanden först.
-Om denna inställning är av kommer listan över rum endast sorteras efter när det sista meddelandet i rummet skickades.
-Om denna inställning är på kommer rum med aktiva notifikationer (den lilla cirkeln med ett nummer i) sorteras högst upp. Rum som du stängt av notifikationer för kommer fortfarande sorteras efter när det sista meddelandet skickades, eftersom du inte verkar tycka att de är lika viktiga som andra rum.</translation>
+        <source>Camera frame rate</source>
+        <translation type="unfinished">Kamerans bildfrekvens</translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>Läskvitton</translation>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
+        <translation type="unfinished">Tillåt reserv-turnserver</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
-        <translation>Visa om ditt meddelande har blivit läst.
-Status visas bredvid tidsstämpel.</translation>
+        <source>Send encrypted messages to verified users only</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
-        <translation>Skicka meddelanden som Markdown</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished">Dela nycklar med verifierade användare och enheter</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
-        <translation>Tillåt användning av Markdown i meddelanden.
-Om denna inställning är av kommer alla meddelanden skickas som oformatterad text.</translation>
+        <source>Online Key Backup</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Profile</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>Skrivbordsnotifikationer</translation>
+        <location line="+2"/>
+        <source>User ID</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation>Notifiera om mottagna meddelanden när klienten inte är i fokus.</translation>
+        <source>Accesstoken</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
-        <translation>Notis vid notifikation</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">Enhets-ID</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
-        <translation>Visar en notis när ett meddelande mottags.
-Detta gör vanligtvis att ikonen i aktivitetsfältet animeras på något sätt.</translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">Enhetsfingeravtryck</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
-        <translation>Markera meddelande vid hållande av muspekare</translation>
+        <source>Homeserver</source>
+        <translation type="unfinished">Hemserver</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation>Ändra bakgrundsfärgen av meddelanden när du håller muspekaren över dem.</translation>
+        <source>Version</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
-        <translation>Stor Emoji i tidslinje</translation>
+        <location line="+2"/>
+        <source>Platform</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
-        <translation>Öka fontstorleken på meddelanden som enbart innehåller ett par emoji.</translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">ALLMÄNT</translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>TIMELINE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>SIDEBAR</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
-        <translation>Dela nycklar med verifierade användare och enheter</translation>
+        <source>TRAY</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
-        <translation type="unfinished"></translation>
+        <source>CALLS</source>
+        <translation type="unfinished">SAMTAL</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
-        <translation type="unfinished"></translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">KRYPTERING</translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>INFO</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Session Keys</source>
+        <translation type="unfinished">Sessionsnycklar</translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
-        <translation>SPARAD</translation>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
-        <translation>EJ SPARAD</translation>
+        <location line="+2"/>
+        <source>Online backup key</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
-        <translation>Storleksfaktor</translation>
+        <location line="+2"/>
+        <source>Self signing key</source>
+        <translation type="unfinished">Självsigneringsnyckel</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
-        <translation>Ändrar storleksfaktorn av hela användargränssnittet.</translation>
+        <source>User signing key</source>
+        <translation type="unfinished">Användar-signeringsnyckel</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
-        <translation>Fontstorlek</translation>
+        <location line="+2"/>
+        <source>Master signing key</source>
+        <translation type="unfinished">Primär signeringsnyckel</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
-        <translation>Font-familj</translation>
+        <location line="+91"/>
+        <source>Default</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>Tema</translation>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
+        <translation type="unfinished">Ställ in notifikationsljudet som spelas upp vid ett inkommande samtal</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
-        <translation>Ringsignal</translation>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <translation type="unfinished">Ställ in maximal bredd av meddelanden i tidslinjen (i pixlar). Detta kan förbättra läsligheten på breda skärmar när Nheko är maximerat.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
-        <translation>Ställ in notifikationsljudet som spelas upp vid ett inkommande samtal</translation>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
-        <translation>Mikrofon</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished">Ändra bakgrundsfärgen av meddelanden när du håller muspekaren över dem.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
-        <translation>Kamera</translation>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <translation type="unfinished">Öka fontstorleken på meddelanden som enbart innehåller ett par emoji.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
-        <translation>Kameraupplösning</translation>
+        <location line="+2"/>
+        <source>Keep the application running in the background after closing the client window.</source>
+        <translation type="unfinished">Håll applikationen igång i bakgrunden efter att ha stängt klienten.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
-        <translation>Kamerans bildfrekvens</translation>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
+        <translation type="unfinished">Starta applikationen i bakgrunden utan att visa klienten.</translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
-        <translation>Tillåt reserv-turnserver</translation>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
+        <translation type="unfinished">Visa en kolumn innehållande grupper och taggar bredvid listan över rum.</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
-        <translation>Kommer falla tillbaka på turn.matrix.org som turnserver om din hemserver inte erbjuder någon.</translation>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
+        <translation type="unfinished">Tillåt användning av Markdown i meddelanden.
+Om denna inställning är av kommer alla meddelanden skickas som oformatterad text.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>Device ID</source>
-        <translation>Enhets-ID</translation>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>Enhetsfingeravtryck</translation>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>Sessionsnycklar</translation>
+        <location line="+2"/>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished">Visa vem som skriver i ett rum.
+Denna inställning avgör också huruvida notifikation skickas till andra när du skriver.</translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>IMPORTERA</translation>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished">Visa rum med nya meddelanden först.
+Om denna inställning är av kommer listan över rum endast sorteras efter när det sista meddelandet i rummet skickades.
+Om denna inställning är på kommer rum med aktiva notifikationer (den lilla cirkeln med ett nummer i) sorteras högst upp. Rum som du stängt av notifikationer för kommer fortfarande sorteras efter när det sista meddelandet skickades, eftersom du inte verkar tycka att de är lika viktiga som andra rum.</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>EXPORTERA</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished">Visa knappar för att enkelt svara, reagera eller komma åt ytterligare alternativ bredvid varje meddelande.</translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>KRYPTERING</translation>
+        <location line="+4"/>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished">Visa om ditt meddelande har blivit läst.
+Status visas bredvid tidsstämpel.</translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>ALLMÄNT</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished">Notifiera om mottagna meddelanden när klienten inte är i fokus.</translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
-        <translation>GRÄNSSNITT</translation>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished">Visar en notis när ett meddelande mottags.
+Detta gör vanligtvis att ikonen i aktivitetsfältet animeras på något sätt.</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
+        <translation type="unfinished">Ändra utseendet av användaravatarer i chattar.
+AV - Kvadrat, PÃ… - Cirkel.</translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
+        <translation type="unfinished">Dekryptera meddelanden visade i sidofältet.
+PÃ¥verkar endast krypterade chattar.</translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
-        <translation>Touchskärmsläge</translation>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
         <source>Will prevent text selection in the timeline to make touch scrolling easier.</source>
-        <translation>Förhindrar selektering av text i tidslinjen för att göra touch-skrollande enklare.</translation>
+        <translation type="unfinished">Förhindrar selektering av text i tidslinjen för att göra touch-skrollande enklare.</translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
-        <translation>Emoji font-familj</translation>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
+        <translation type="unfinished">Ändrar storleksfaktorn av hela användargränssnittet.</translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
-        <translation>Primär signeringsnyckel</translation>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <translation type="unfinished">Kommer falla tillbaka på turn.matrix.org som turnserver om din hemserver inte erbjuder någon.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
-        <translation>Din allra viktigaste nyckel. Du behöver inte ha den sparad lokalt, eftersom risken för att den blir stulen då är mindre, samt att den endast behöver användas för att rotera dina övriga signeringsnycklar.</translation>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
-        <translation>Användar-signeringsnyckel</translation>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
-        <translation>Nyckeln för att verifiera andra användare. Om den är sparad lokalt, kommer alla enheter tillhörande en användare verifieras när användaren verifieras.</translation>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
-        <translation>Självsigneringsnyckel</translation>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <translation type="unfinished">Nyckeln för att dekryptera online-lagrade nyckelbackuper. Om den är lagrad lokalt kan du slå på onlinebackup av nycklar för att säkert lagra krypteringsnycklar på servern.</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
-        <translation>Nyckeln för att verifiera dina egna enheter. Om den är sparad lokalt, kommer verifierade enheter markeras som verifierad för alla dina andra enheter, samt för användare som har verifierat dig.</translation>
+        <translation type="unfinished">Nyckeln för att verifiera dina egna enheter. Om den är sparad lokalt, kommer verifierade enheter markeras som verifierad för alla dina andra enheter, samt för användare som har verifierat dig.</translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
-        <translation>Backupnyckel</translation>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <translation type="unfinished">Nyckeln för att verifiera andra användare. Om den är sparad lokalt, kommer alla enheter tillhörande en användare verifieras när användaren verifieras.</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
-        <translation>Nyckeln för att dekryptera online-lagrade nyckelbackuper. Om den är lagrad lokalt kan du slå på onlinebackup av nycklar för att säkert lagra krypteringsnycklar på servern.</translation>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <translation type="unfinished">Din allra viktigaste nyckel. Du behöver inte ha den sparad lokalt, eftersom risken för att den blir stulen då är mindre, samt att den endast behöver användas för att rotera dina övriga signeringsnycklar.</translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
-        <translation>Välj en fil</translation>
+        <translation type="unfinished">Välj en fil</translation>
     </message>
     <message>
         <location line="+0"/>
         <source>All Files (*)</source>
-        <translation>Alla Filer (*)</translation>
+        <translation type="unfinished">Alla Filer (*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>Öppna sessionsfil</translation>
+        <translation type="unfinished">Öppna sessionsfil</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>Fel</translation>
+        <translation type="unfinished">Fel</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>Fillösenord</translation>
+        <translation type="unfinished">Fillösenord</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>Ange lösenfrasen för att dekryptera filen:</translation>
+        <translation type="unfinished">Ange lösenfrasen för att dekryptera filen:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>Lösenordet kan inte vara tomt</translation>
+        <translation type="unfinished">Lösenordet kan inte vara tomt</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>Ange lösenfrasen för att kryptera dina sessionsnycklar:</translation>
+        <translation type="unfinished">Ange lösenfrasen för att kryptera dina sessionsnycklar:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>Fil för att spara de exporterade sessionsnycklarna</translation>
+        <translation type="unfinished">Fil för att spara de exporterade sessionsnycklarna</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation>BEGÄRAN</translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation>LADDA NED</translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation>SPARAD</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation>EJ SPARAD</translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>IMPORTERA</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>EXPORTERA</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished">Ingen krypterad privat chatt med denna användare kunde hittas. Skapa en krypterad privat chatt med användaren och försök igen.</translation>
     </message>
@@ -3168,7 +3335,7 @@ Detta gör vanligtvis att ikonen i aktivitetsfältet animeras på något sätt.<
         <translation>Väntar på motparten…</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation>Väntar på att motparten ska acceptera verifikationsförfrågan.</translation>
     </message>
@@ -3183,7 +3350,7 @@ Detta gör vanligtvis att ikonen i aktivitetsfältet animeras på något sätt.<
         <translation>Väntar på att motparten ska slutföra verifikationsprocessen.</translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>Avbryt</translation>
     </message>
@@ -3191,22 +3358,22 @@ Detta gör vanligtvis att ikonen i aktivitetsfältet animeras på något sätt.<
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>Välkommen till Nheko! Skrivbordsklienten för Matrix-protokollet.</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>Ha en trevlig vistelse!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>REGISTRERA</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>LOGGA IN</translation>
     </message>
@@ -3214,7 +3381,7 @@ Detta gör vanligtvis att ikonen i aktivitetsfältet animeras på något sätt.<
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation>Igår</translation>
     </message>
diff --git a/resources/langs/nheko_zh_CN.ts b/resources/langs/nheko_zh_CN.ts
index 1baa455b7..d1f69a8c2 100644
--- a/resources/langs/nheko_zh_CN.ts
+++ b/resources/langs/nheko_zh_CN.ts
@@ -35,28 +35,10 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>AwaitingVerificationConfirmation</name>
-    <message>
-        <location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+13"/>
-        <source>Awaiting Confirmation</source>
-        <translation>等待确认</translation>
-    </message>
-    <message>
-        <location line="+12"/>
-        <source>Waiting for other side to complete verification.</source>
-        <translation>等待对方完成确认</translation>
-    </message>
-    <message>
-        <location line="+13"/>
-        <source>Cancel</source>
-        <translation>取消</translation>
-    </message>
-</context>
 <context>
     <name>Cache</name>
     <message numerus="yes">
-        <location filename="../../src/Cache.cpp" line="+2446"/>
+        <location filename="../../src/Cache.cpp" line="+2512"/>
         <source>%1 and %n other(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -72,7 +54,7 @@
 <context>
     <name>CallInvite</name>
     <message>
-        <location filename="../qml/voip/CallInvite.qml" line="+73"/>
+        <location filename="../qml/voip/CallInvite.qml" line="+77"/>
         <source>Video Call</source>
         <translation>视频通话</translation>
     </message>
@@ -105,27 +87,27 @@
         <translation type="unfinished">设备</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Accept</source>
         <translation type="unfinished">接受</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>Unknown microphone: %1</source>
         <translation>未知的麦克风:%1</translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+9"/>
         <source>Unknown camera: %1</source>
         <translation>未知的摄像头:%1</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>Decline</source>
         <translation type="unfinished">拒绝</translation>
     </message>
     <message>
-        <location line="-28"/>
+        <location line="-31"/>
         <source>No microphone found.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -141,18 +123,18 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+127"/>
+        <location filename="../../src/ChatPage.cpp" line="+120"/>
         <source>Failed to invite user: %1</source>
         <translation>邀请用户失败: %1</translation>
     </message>
     <message>
         <location line="+4"/>
-        <location line="+663"/>
+        <location line="+655"/>
         <source>Invited user: %1</source>
         <translation>邀请已发送: %1</translation>
     </message>
     <message>
-        <location line="-458"/>
+        <location line="-460"/>
         <source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
         <translation>无法迁移缓存到目前版本,可能有多种原因引发此类问题。您可以新建一个议题并继续使用之前版本,或者您可以尝试手动删除缓存。</translation>
     </message>
@@ -193,7 +175,7 @@
         <translation>你真的想要邀请 %1 (%2) 吗?</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Failed to invite %1 to %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
@@ -253,7 +235,7 @@
         <translation>解禁用户: %1</translation>
     </message>
     <message>
-        <location line="+347"/>
+        <location line="+345"/>
         <source>Do you really want to start a private chat with %1?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -316,10 +298,15 @@
         <translation>离开聊天室失败:%1</translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+68"/>
         <source>Failed to kick %1 from %2: %3</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../qml/ChatPage.qml" line="+37"/>
+        <source>No network connection</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommunitiesList</name>
@@ -395,7 +382,7 @@
 <context>
     <name>CrossSigningSecrets</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+272"/>
+        <location filename="../../src/ChatPage.cpp" line="+270"/>
         <source>Decrypt secrets</source>
         <translation type="unfinished"></translation>
     </message>
@@ -428,12 +415,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -446,7 +433,7 @@
 <context>
     <name>EditModal</name>
     <message>
-        <location filename="../../src/ui/RoomSettings.cpp" line="+43"/>
+        <location filename="../../src/ui/RoomSettings.cpp" line="+46"/>
         <source>Apply</source>
         <translation>应用</translation>
     </message>
@@ -474,7 +461,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+187"/>
+        <location line="+193"/>
         <source>People</source>
         <translation type="unfinished"></translation>
     </message>
@@ -522,12 +509,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+13"/>
         <source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press &apos;They do not match!&apos; to abort verification!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+376"/>
+        <location line="+378"/>
         <source>They do not match!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -540,7 +527,7 @@
 <context>
     <name>Encrypted</name>
     <message>
-        <location filename="../qml/delegates/Encrypted.qml" line="+45"/>
+        <location filename="../qml/delegates/Encrypted.qml" line="+47"/>
         <source>There is no key to unlock this message. We requested the key automatically, but you can try requesting it again if you are impatient.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -611,7 +598,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Other client does not support our verification protocol.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -641,7 +628,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+16"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -649,15 +636,72 @@
 <context>
     <name>ForwardCompleter</name>
     <message>
-        <location filename="../qml/ForwardCompleter.qml" line="+45"/>
+        <location filename="../qml/ForwardCompleter.qml" line="+40"/>
         <source>Forward Message</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>HiddenEvents</name>
+    <message>
+        <location filename="../../src/ui/HiddenEvents.cpp" line="+79"/>
+        <location line="+10"/>
+        <source>Failed to set hidden events: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>HiddenEventsDialog</name>
+    <message>
+        <location filename="../qml/dialogs/HiddenEventsDialog.qml" line="+31"/>
+        <source>Hidden events for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in %1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>These events will be be &lt;b&gt;shown&lt;/b&gt; in all rooms:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>User events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Joins, leaves, avatar and name changes, bans, …</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Power level changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Sent when a moderator is added/removed or the permissions of a room are changed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Stickers</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ImagePackEditorDialog</name>
     <message>
-        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+25"/>
+        <location filename="../qml/dialogs/ImagePackEditorDialog.qml" line="+23"/>
         <source>Editing image pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -697,34 +741,34 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+12"/>
         <source>State key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+8"/>
         <source>Packname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+8"/>
         <source>Attribution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
-        <location line="+66"/>
+        <location line="+9"/>
+        <location line="+70"/>
         <source>Use as Emoji</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-56"/>
-        <location line="+66"/>
+        <location line="-57"/>
+        <location line="+70"/>
         <source>Use as Sticker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-30"/>
+        <location line="-32"/>
         <source>Shortcode</source>
         <translation type="unfinished"></translation>
     </message>
@@ -734,7 +778,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+30"/>
+        <location line="+35"/>
         <source>Remove from pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -767,7 +811,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+14"/>
         <source>New room pack</source>
         <translation type="unfinished"></translation>
     </message>
@@ -802,7 +846,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+64"/>
+        <location line="+65"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -820,7 +864,7 @@
         <translation type="unfinished">所有文件(*)</translation>
     </message>
     <message>
-        <location line="+481"/>
+        <location line="+483"/>
         <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -833,7 +877,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+23"/>
         <source>User ID to invite</source>
         <translation type="unfinished">要邀请的用户 ID</translation>
     </message>
@@ -867,7 +911,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+21"/>
         <source>Room ID or alias</source>
         <translation type="unfinished">聊天室 ID 或别名</translation>
     </message>
@@ -888,17 +932,17 @@
 <context>
     <name>LoginPage</name>
     <message>
-        <location filename="../../src/LoginPage.cpp" line="+82"/>
+        <location filename="../qml/pages/LoginPage.qml" line="+59"/>
         <source>Matrix ID</source>
         <translation></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+1"/>
         <source>e.g @joe:matrix.org</source>
         <translation>例如 @joe:matrix.org</translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+3"/>
         <source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
 You can also put your homeserver address there, if your server doesn&apos;t support .well-known lookup.
 Example: @user:server.my
@@ -916,7 +960,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+8"/>
         <source>Device name</source>
         <translation>设备名</translation>
     </message>
@@ -926,7 +970,7 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+10"/>
         <source>Homeserver address</source>
         <translation type="unfinished"></translation>
     </message>
@@ -936,26 +980,31 @@ If Nheko fails to discover your homeserver, it will show you a field to enter th
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+3"/>
         <source>The address that can be used to contact you homeservers client API.
 Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+19"/>
+        <location line="+30"/>
         <source>LOGIN</source>
         <translation>登录</translation>
     </message>
     <message>
-        <location line="+83"/>
-        <location line="+11"/>
-        <location line="+153"/>
-        <location line="+11"/>
+        <location line="+35"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../src/LoginPage.cpp" line="+81"/>
+        <location line="+6"/>
+        <location line="+58"/>
+        <location line="+81"/>
         <source>You have entered an invalid Matrix ID  e.g @joe:matrix.org</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-128"/>
+        <location line="-111"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -965,7 +1014,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
+        <location line="+33"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation>没找到要求的终端。可能不是一个 Matrix 服务器。</translation>
     </message>
@@ -980,17 +1029,17 @@ Example: https://server.my:8787</source>
         <translation>发生了一个未知错误。请确认服务器域名合法。</translation>
     </message>
     <message>
-        <location line="-164"/>
+        <location filename="../qml/pages/LoginPage.qml" line="-21"/>
         <source>SSO LOGIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+259"/>
+        <location filename="../../src/LoginPage.cpp" line="+68"/>
         <source>Empty password</source>
         <translation>空密码</translation>
     </message>
     <message>
-        <location line="+55"/>
+        <location line="+52"/>
         <source>SSO login failed</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1016,67 +1065,67 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageDelegate</name>
     <message>
-        <location filename="../qml/delegates/MessageDelegate.qml" line="+183"/>
-        <source>removed</source>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+198"/>
+        <source>%1 removed a message</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>Encryption enabled</source>
+        <location line="+10"/>
+        <source>%1 enabled encryption</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+22"/>
-        <source>room name changed to: %1</source>
+        <location line="+24"/>
+        <source>%2 changed the room name to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed room name</source>
+        <source>%1 removed the room name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>topic changed to: %1</source>
+        <location line="+13"/>
+        <source>%2 changed the topic to: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+0"/>
-        <source>removed topic</source>
+        <source>%1 removed the topic</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the room avatar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the pinned messages.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the stickers and emotes in this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the addresses for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 changed the parent spaces for this room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 created and configured room: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+16"/>
         <source>%1 placed a voice call.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1091,22 +1140,22 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
+        <location line="+15"/>
         <source>%1 answered the call.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+13"/>
         <source>%1 ended the call.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Negotiating call...</source>
+        <location line="+13"/>
+        <source>%1 is negotiating the call...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+71"/>
+        <location line="+76"/>
         <source>Allow them in</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1114,7 +1163,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageInput</name>
     <message>
-        <location filename="../qml/MessageInput.qml" line="+45"/>
+        <location filename="../qml/MessageInput.qml" line="+46"/>
         <source>Hang up</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1124,17 +1173,17 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>Send a file</source>
         <translation type="unfinished">发送一个文件</translation>
     </message>
     <message>
-        <location line="+51"/>
+        <location line="+56"/>
         <source>Write a message...</source>
         <translation>写一条消息…</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+265"/>
         <source>Stickers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1157,7 +1206,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>MessageView</name>
     <message>
-        <location filename="../qml/MessageView.qml" line="+110"/>
+        <location filename="../qml/MessageView.qml" line="+123"/>
         <source>Edit</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1177,19 +1226,19 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+431"/>
-        <location line="+125"/>
+        <location line="+422"/>
+        <location line="+126"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-118"/>
-        <location line="+125"/>
+        <location line="-119"/>
+        <location line="+126"/>
         <source>Copy &amp;link location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-117"/>
+        <location line="-118"/>
         <source>Re&amp;act</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1224,7 +1273,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
+        <location line="+10"/>
         <source>&amp;Mark as read</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1277,7 +1326,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+19"/>
         <source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify an unverified device now? (Please make sure you have one of those devices available.)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1307,7 +1356,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+12"/>
         <source>Cancel</source>
         <translation>取消</translation>
     </message>
@@ -1380,7 +1429,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+24"/>
         <source>Voice</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1395,7 +1444,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+11"/>
         <source>Cancel</source>
         <translation type="unfinished">取消</translation>
     </message>
@@ -1411,7 +1460,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>QCoreApplication</name>
     <message>
-        <location filename="../../src/main.cpp" line="+212"/>
+        <location filename="../../src/main.cpp" line="+213"/>
         <source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1429,7 +1478,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>ReadReceipts</name>
     <message>
-        <location filename="../qml/dialogs/ReadReceipts.qml" line="+42"/>
+        <location filename="../qml/dialogs/ReadReceipts.qml" line="+41"/>
         <source>Read receipts</source>
         <translation type="unfinished">阅读回执</translation>
     </message>
@@ -1445,63 +1494,88 @@ Example: https://server.my:8787</source>
 <context>
     <name>RegisterPage</name>
     <message>
-        <location filename="../../src/RegisterPage.cpp" line="+82"/>
+        <location filename="../qml/pages/RegisterPage.qml" line="+93"/>
         <source>Username</source>
         <translation>用户名</translation>
     </message>
     <message>
-        <location line="+2"/>
-        <location line="+147"/>
+        <location line="+1"/>
         <source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="+21"/>
+        <location line="+96"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-75"/>
         <source>Password</source>
         <translation>密码</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="+7"/>
         <source>Password confirmation</source>
         <translation>密码确认</translation>
     </message>
     <message>
-        <location line="+4"/>
+        <location line="-86"/>
         <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+1"/>
+        <source>your.server</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+3"/>
         <source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+35"/>
+        <location line="+90"/>
+        <source>Your passwords do not match!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Device name</source>
+        <translation type="unfinished">设备名</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+29"/>
         <source>REGISTER</source>
         <translation>注册</translation>
     </message>
     <message>
-        <location line="+169"/>
+        <location filename="../../src/RegisterPage.cpp" line="+77"/>
         <source>Autodiscovery failed. Received malformed response.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+6"/>
         <source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+24"/>
+        <location line="+25"/>
         <source>The required endpoints were not found. Possibly not a Matrix server.</source>
         <translation type="unfinished">没找到要求的终端。可能不是一个 Matrix 服务器。</translation>
     </message>
     <message>
-        <location line="+6"/>
+        <location line="+7"/>
         <source>Received malformed response. Make sure the homeserver domain is valid.</source>
         <translation type="unfinished">收到形式错误的响应。请确认服务器域名合法。</translation>
     </message>
@@ -1511,25 +1585,35 @@ Example: https://server.my:8787</source>
         <translation type="unfinished">发生了一个未知错误。请确认服务器域名合法。</translation>
     </message>
     <message>
-        <location line="-107"/>
-        <source>Password is not long enough (min 8 chars)</source>
-        <translation>密码不够长(至少8个字符)</translation>
+        <location line="+10"/>
+        <source>Server does not support querying registration flows!</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Passwords don&apos;t match</source>
-        <translation>密码不匹配</translation>
+        <location line="+5"/>
+        <source>Server does not support registration.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>Invalid server name</source>
-        <translation>无效的服务器名</translation>
+        <location line="+25"/>
+        <source>Invalid username.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Name already in use.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Part of the reserved namespace.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>ReplyPopup</name>
     <message>
-        <location filename="../qml/ReplyPopup.qml" line="+64"/>
+        <location filename="../qml/ReplyPopup.qml" line="+65"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1542,17 +1626,17 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomDirectory</name>
     <message>
-        <location filename="../qml/dialogs/RoomDirectory.qml" line="+26"/>
+        <location filename="../qml/dialogs/RoomDirectory.qml" line="+27"/>
         <source>Explore Public Rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+168"/>
+        <location line="+146"/>
         <source>Search for public rooms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
+        <location line="+10"/>
         <source>Choose custom homeserver</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1560,7 +1644,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomInfo</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="+1926"/>
+        <location filename="../../src/Cache.cpp" line="+1925"/>
         <source>no version stored</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1608,7 +1692,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+295"/>
+        <location line="+299"/>
         <source>Status Message</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1628,7 +1712,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+83"/>
+        <location line="+81"/>
         <source>Logout</source>
         <translation type="unfinished">登出</translation>
     </message>
@@ -1656,7 +1740,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+66"/>
+        <location line="+64"/>
         <source>Start a new chat</source>
         <translation type="unfinished">开始新的聊天</translation>
     </message>
@@ -1676,7 +1760,12 @@ Example: https://server.my:8787</source>
         <translation type="unfinished">聊天室目录</translation>
     </message>
     <message>
-        <location line="+17"/>
+        <location line="+19"/>
+        <source>Search rooms (Ctrl+K)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
         <source>User settings</source>
         <translation type="unfinished">用户设置</translation>
     </message>
@@ -1689,7 +1778,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+33"/>
+        <location line="+32"/>
         <source>%n people in %1</source>
         <comment>Summary above list of members</comment>
         <translation type="unfinished">
@@ -1725,12 +1814,12 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomSettings</name>
     <message>
-        <location filename="../qml/dialogs/RoomSettings.qml" line="+27"/>
+        <location filename="../qml/dialogs/RoomSettings.qml" line="+26"/>
         <source>Room Settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location line="+81"/>
+        <location line="+82"/>
         <source>%n member(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -1822,6 +1911,21 @@ Example: https://server.my:8787</source>
         <source>Change what packs are enabled, remove packs or create new ones</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+6"/>
+        <source>Hidden events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Configure</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Select events to hide in this room</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
         <location line="+16"/>
         <source>INFO</source>
@@ -1872,7 +1976,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>RoomlistModel</name>
     <message>
-        <location filename="../../src/timeline/RoomlistModel.cpp" line="+151"/>
+        <location filename="../../src/timeline/RoomlistModel.cpp" line="+152"/>
         <source>Pending invite.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1882,7 +1986,7 @@ Example: https://server.my:8787</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+34"/>
+        <location line="+33"/>
         <source>No preview available</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1890,7 +1994,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>Root</name>
     <message>
-        <location filename="../qml/Root.qml" line="+276"/>
+        <location filename="../qml/Root.qml" line="+314"/>
         <source>Please enter your login password to continue:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1972,7 +2076,7 @@ Example: https://server.my:8787</source>
 <context>
     <name>SecretStorage</name>
     <message>
-        <location filename="../../src/Cache.cpp" line="-4222"/>
+        <location filename="../../src/Cache.cpp" line="-4278"/>
         <source>Failed to connect to secret storage</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2130,12 +2234,12 @@ If you choose verify, you need to have the other device available. If you choose
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Verification successful! Both sides verified their devices!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+14"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2143,7 +2247,7 @@ If you choose verify, you need to have the other device available. If you choose
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+1219"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+1250"/>
         <location line="+16"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished">删除消息失败:%1</translation>
@@ -2259,62 +2363,57 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
-        <source>%1 was invited.</source>
+        <location line="+123"/>
+        <source>%2 revoked the invite to %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+18"/>
-        <source>%1 changed their avatar.</source>
+        <location line="+5"/>
+        <source>%2 kicked %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>%1 changed some profile info.</source>
+        <source>%2 unbanned %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+5"/>
-        <source>%1 joined.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+3"/>
-        <source>%1 joined via authorisation from %2&apos;s server.</source>
+        <source>%2 rejected the knock from %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+11"/>
-        <source>%1 rejected their invite.</source>
+        <location line="-35"/>
+        <source>%1 changed their avatar.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Revoked the invite to %1.</source>
+        <source>%1 changed some profile info.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>%1 left the room.</source>
+        <location line="+5"/>
+        <source>%1 joined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Kicked %1.</source>
+        <location line="+3"/>
+        <source>%1 joined via authorisation from %2&apos;s server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Unbanned %1.</source>
+        <location line="+11"/>
+        <source>%1 rejected their invite.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+14"/>
-        <source>%1 was banned.</source>
+        <location line="+5"/>
+        <source>%1 left the room.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
+        <location line="+26"/>
         <source>Reason: %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2324,12 +2423,17 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-1062"/>
+        <location line="-1068"/>
         <source>You joined this room.</source>
         <translation type="unfinished">您已加入此房间</translation>
     </message>
     <message>
-        <location line="+1023"/>
+        <location line="+1017"/>
+        <source>%1 invited %2.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
         <source>%1 has changed their avatar and changed their display name to %2.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2339,18 +2443,18 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+37"/>
-        <source>Rejected the knock from %1.</source>
+        <location line="+39"/>
+        <source>%1 left after having already left!</source>
+        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>%1 left after having already left!</source>
-        <comment>This is a leave event after the user already left and shouldn&apos;t happen apart from state resets</comment>
+        <location line="+7"/>
+        <source>%1 banned %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+3"/>
         <source>%1 knocked.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2358,7 +2462,7 @@ Reason: %4</source>
 <context>
     <name>TimelineRow</name>
     <message>
-        <location filename="../qml/TimelineRow.qml" line="+176"/>
+        <location filename="../qml/TimelineRow.qml" line="+202"/>
         <source>Edited</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2404,17 +2508,17 @@ Reason: %4</source>
 <context>
     <name>TopBar</name>
     <message>
-        <location filename="../qml/TopBar.qml" line="+90"/>
+        <location filename="../qml/TopBar.qml" line="+95"/>
         <source>Back to room list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-71"/>
+        <location line="-76"/>
         <source>No room selected</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+126"/>
+        <location line="+131"/>
         <source>This room is not encrypted!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2472,7 +2576,7 @@ Reason: %4</source>
 <context>
     <name>TrayIcon</name>
     <message>
-        <location filename="../../src/TrayIcon.cpp" line="+116"/>
+        <location filename="../../src/TrayIcon.cpp" line="+117"/>
         <source>Show</source>
         <translation>显示</translation>
     </message>
@@ -2485,7 +2589,7 @@ Reason: %4</source>
 <context>
     <name>UIA</name>
     <message>
-        <location filename="../../src/ui/UIA.cpp" line="+60"/>
+        <location filename="../../src/ui/UIA.cpp" line="+59"/>
         <source>No available registration flows!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2510,7 +2614,7 @@ Reason: %4</source>
 <context>
     <name>UserProfile</name>
     <message>
-        <location filename="../qml/dialogs/UserProfile.qml" line="+29"/>
+        <location filename="../qml/dialogs/UserProfile.qml" line="+26"/>
         <source>Global User Profile</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2520,7 +2624,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+49"/>
+        <location line="+48"/>
         <source>Change avatar globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2530,7 +2634,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+80"/>
+        <location line="+84"/>
         <source>Change display name globally.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2550,7 +2654,7 @@ Reason: %4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="+15"/>
         <source>Open the global profile for this user.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2634,403 +2738,428 @@ Reason: %4</source>
 <context>
     <name>UserSettings</name>
     <message>
-        <location filename="../../src/UserSettingsPage.cpp" line="+421"/>
-        <location filename="../../src/UserSettingsPage.h" line="+212"/>
+        <location filename="../../src/UserSettingsPage.cpp" line="+442"/>
+        <location filename="../../src/UserSettingsPage.h" line="+219"/>
         <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>UserSettingsPage</name>
+    <name>UserSettingsModel</name>
+    <message>
+        <location line="+376"/>
+        <source>Theme</source>
+        <translation type="unfinished">主题</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Scale factor</source>
+        <translation type="unfinished"></translation>
+    </message>
     <message>
-        <location line="+579"/>
+        <location line="+2"/>
+        <source>Highlight message on hover</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Large Emoji in timeline</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
         <source>Minimize to tray</source>
-        <translation>最小化至托盘</translation>
+        <translation type="unfinished">最小化至托盘</translation>
     </message>
     <message>
-        <location line="+3"/>
+        <location line="+2"/>
         <source>Start in tray</source>
-        <translation>在托盘启动</translation>
+        <translation type="unfinished">在托盘启动</translation>
     </message>
     <message>
-        <location line="+10"/>
+        <location line="+2"/>
         <source>Group&apos;s sidebar</source>
-        <translation>群组侧边栏</translation>
+        <translation type="unfinished">群组侧边栏</translation>
     </message>
     <message>
-        <location line="-6"/>
-        <source>Circular Avatars</source>
+        <location line="+2"/>
+        <source>Send messages as Markdown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-218"/>
-        <source>profile: %1</source>
+        <location line="+2"/>
+        <source>Enable message bubbles</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+104"/>
-        <source>Default</source>
+        <location line="+2"/>
+        <source>Enable small Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+31"/>
-        <source>CALLS</source>
+        <location line="+2"/>
+        <source>Play animated images only on hover</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Cross Signing Keys</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Typing notifications</source>
+        <translation type="unfinished">打字通知</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>REQUEST</source>
+        <location line="+2"/>
+        <source>Sort rooms by unreads</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>DOWNLOAD</source>
+        <location line="+2"/>
+        <source>Show buttons in timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+27"/>
-        <source>Keep the application running in the background after closing the client window.</source>
+        <location line="+2"/>
+        <source>Limit width of timeline</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Start the application in the background without showing the client window.</source>
-        <translation type="unfinished"></translation>
+        <location line="+2"/>
+        <source>Read receipts</source>
+        <translation type="unfinished">阅读回执</translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Change the appearance of user avatars in chats.
-OFF - square, ON - Circle.</source>
+        <location line="+2"/>
+        <source>Desktop notifications</source>
+        <translation type="unfinished">桌面通知</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Alert on notification</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Use identicons</source>
+        <location line="+2"/>
+        <source>Circular Avatars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>Show a column containing groups and tags next to the room list.</source>
+        <location line="+2"/>
+        <source>Use identicons</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+2"/>
         <source>Decrypt messages in sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Decrypt the messages shown in the sidebar.
-Only affects messages in encrypted chats.</source>
+        <source>Privacy Screen</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Privacy Screen</source>
+        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>When the window loses focus, the timeline will
-be blurred.</source>
+        <source>Touchscreen mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Privacy screen timeout (in seconds [0 - 3600])</source>
+        <location line="+2"/>
+        <source>Font size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set timeout (in seconds) for how long after window loses
-focus before the screen will be blurred.
-Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
+        <source>Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Show buttons in timeline</source>
+        <location line="+2"/>
+        <source>Emoji Font Family</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <source>Ringtone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Limit width of timeline</source>
+        <source>Microphone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
+        <source>Camera</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Typing notifications</source>
-        <translation>打字通知</translation>
+        <source>Camera resolution</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show who is typing in a room.
-This will also enable or disable sending typing notifications to others.</source>
+        <source>Camera frame rate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Sort rooms by unreads</source>
+        <location line="+2"/>
+        <source>Allow fallback call assist server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Display rooms with new messages first.
-If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
-If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <source>Send encrypted messages to verified users only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>Read receipts</source>
-        <translation>阅读回执</translation>
+        <location line="+2"/>
+        <source>Share keys with verified users and devices</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show if your message was read.
-Status is displayed next to timestamps.</source>
+        <source>Online Key Backup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Send messages as Markdown</source>
+        <location line="+2"/>
+        <source>Profile</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Allow using markdown in messages.
-When disabled, all messages are sent as a plain text.</source>
+        <source>User ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Play animated images only on hover</source>
+        <source>Accesstoken</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Desktop notifications</source>
-        <translation>桌面通知</translation>
+        <location line="+2"/>
+        <source>Device ID</source>
+        <translation type="unfinished">设备 ID</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Notify about received message when the client is not currently focused.</source>
-        <translation type="unfinished"></translation>
+        <source>Device Fingerprint</source>
+        <translation type="unfinished">设备指纹</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Alert on notification</source>
+        <location line="+2"/>
+        <source>Homeserver</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Show an alert when a message is received.
-This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <source>Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Highlight message on hover</source>
+        <source>Platform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Change the background color of messages when you hover over them.</source>
-        <translation type="unfinished"></translation>
+        <source>GENERAL</source>
+        <translation type="unfinished">通用</translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Large Emoji in timeline</source>
+        <location line="+2"/>
+        <source>TIMELINE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Make font size larger if messages with only a few emojis are displayed.</source>
+        <source>SIDEBAR</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+56"/>
-        <source>Send encrypted messages to verified users only</source>
+        <location line="+2"/>
+        <source>TRAY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
+        <source>NOTIFICATIONS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Share keys with verified users and devices</source>
+        <source>CALLS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
-        <translation type="unfinished"></translation>
+        <source>ENCRYPTION</source>
+        <translation type="unfinished">加密</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Online Key Backup</source>
+        <source>INFO</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
+        <source>Session Keys</source>
+        <translation type="unfinished">会话密钥</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Cross Signing Secrets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+188"/>
-        <source>Enable online key backup</source>
+        <location line="+2"/>
+        <source>Online backup key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>The Nheko authors recommend not enabling online key backup until symmetric online key backup is available. Enable anyway?</source>
+        <location line="+2"/>
+        <source>Self signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+253"/>
-        <source>CACHED</source>
+        <location line="+2"/>
+        <source>User signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+6"/>
-        <source>NOT CACHED</source>
+        <location line="+2"/>
+        <source>Master signing key</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-506"/>
-        <source>Scale factor</source>
+        <location line="+91"/>
+        <source>Default</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Change the scale factor of the whole user interface.</source>
+        <location line="+33"/>
+        <source>Set the notification sound to play when a call invite arrives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Font size</source>
+        <location line="+7"/>
+        <source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Font Family</source>
+        <location line="+3"/>
+        <source>Set timeout (in seconds) for how long after window loses
+focus before the screen will be blurred.
+Set to 0 to blur immediately after focus loss. Max value of 1 hour (3600 seconds)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+8"/>
-        <source>Theme</source>
-        <translation>主题</translation>
+        <location line="+7"/>
+        <source>Change the background color of messages when you hover over them.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Ringtone</source>
+        <location line="+2"/>
+        <source>Make font size larger if messages with only a few emojis are displayed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Set the notification sound to play when a call invite arrives</source>
+        <source>Keep the application running in the background after closing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Microphone</source>
+        <location line="+3"/>
+        <source>Start the application in the background without showing the client window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera</source>
+        <location line="+2"/>
+        <source>Show a column containing groups and tags next to the room list.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera resolution</source>
+        <location line="+2"/>
+        <source>Allow using markdown in messages.
+When disabled, all messages are sent as a plain text.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Camera frame rate</source>
+        <location line="+4"/>
+        <source>Messages get a bubble background. This also triggers some layout changes (WIP).</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Allow fallback call assist server</source>
+        <location line="+3"/>
+        <source>Avatars are resized to fit above the message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
+        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+4"/>
-        <source>Device ID</source>
-        <translation>设备 ID</translation>
+        <location line="+2"/>
+        <source>Show who is typing in a room.
+This will also enable or disable sending typing notifications to others.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+1"/>
-        <source>Device Fingerprint</source>
-        <translation>设备指纹</translation>
+        <location line="+4"/>
+        <source>Display rooms with new messages first.
+If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
+If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don&apos;t seem to consider them as important as the other rooms.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-168"/>
-        <source>Session Keys</source>
-        <translation>会话密钥</translation>
+        <location line="+8"/>
+        <source>Show buttons to quickly reply, react or access additional options next to each message.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+4"/>
-        <source>IMPORT</source>
-        <translation>导入</translation>
-    </message>
-    <message>
-        <location line="+1"/>
-        <source>EXPORT</source>
-        <translation>导出</translation>
+        <source>Show if your message was read.
+Status is displayed next to timestamps.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-34"/>
-        <source>ENCRYPTION</source>
-        <translation>加密</translation>
+        <location line="+2"/>
+        <source>Notify about received message when the client is not currently focused.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-123"/>
-        <source>GENERAL</source>
-        <translation>通用</translation>
+        <location line="+2"/>
+        <source>Show an alert when a message is received.
+This usually causes the application icon in the task bar to animate in some fashion.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+72"/>
-        <source>INTERFACE</source>
+        <location line="+4"/>
+        <source>Change the appearance of user avatars in chats.
+OFF - square, ON - Circle.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+134"/>
+        <location line="+3"/>
         <source>Display an identicon instead of a letter when no avatar is set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+46"/>
-        <source>Plays media like GIFs or WEBPs only when explicitly hovering over them.</source>
+        <location line="+2"/>
+        <source>Decrypt the messages shown in the sidebar.
+Only affects messages in encrypted chats.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+17"/>
-        <source>Touchscreen mode</source>
+        <location line="+3"/>
+        <source>When the window loses focus, the timeline will
+be blurred.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -3039,52 +3168,52 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>Emoji Font Family</source>
+        <location line="+3"/>
+        <source>Change the scale factor of the whole user interface.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+54"/>
-        <source>Master signing key</source>
+        <location line="+2"/>
+        <source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
+        <location line="+3"/>
+        <source>Requires a user to be verified to send encrypted messages to them. This improves safety but makes E2EE more tedious.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+3"/>
-        <source>User signing key</source>
+        <source>Automatically replies to key requests from other users, if they are verified, even if that device shouldn&apos;t have access to those keys otherwise.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
+        <location line="+4"/>
+        <source>Download message encryption keys from and upload to the encrypted online key backup.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>Self signing key</source>
+        <location line="+23"/>
+        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
+        <location line="+4"/>
         <source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+3"/>
-        <source>Backup key</source>
+        <location line="+5"/>
+        <source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+2"/>
-        <source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
+        <location line="+4"/>
+        <source>Your most important key. You don&apos;t need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+60"/>
+        <location line="+392"/>
         <source>Select a file</source>
         <translation type="unfinished">选择一个文件</translation>
     </message>
@@ -3094,52 +3223,90 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished">所有文件(*)</translation>
     </message>
     <message>
-        <location line="+269"/>
+        <location line="+82"/>
         <source>Open Sessions File</source>
-        <translation>打开会话文件</translation>
+        <translation type="unfinished">打开会话文件</translation>
     </message>
     <message>
         <location line="+4"/>
         <location line="+18"/>
         <location line="+8"/>
-        <location line="+19"/>
+        <location line="+18"/>
         <location line="+11"/>
         <location line="+18"/>
         <source>Error</source>
-        <translation>错误</translation>
+        <translation type="unfinished">错误</translation>
     </message>
     <message>
-        <location line="-65"/>
-        <location line="+27"/>
+        <location line="-64"/>
+        <location line="+26"/>
         <source>File Password</source>
-        <translation>文件密码</translation>
+        <translation type="unfinished">文件密码</translation>
     </message>
     <message>
-        <location line="-26"/>
+        <location line="-25"/>
         <source>Enter the passphrase to decrypt the file:</source>
-        <translation>输入密码以解密文件:</translation>
+        <translation type="unfinished">输入密码以解密文件:</translation>
     </message>
     <message>
         <location line="+8"/>
-        <location line="+27"/>
+        <location line="+26"/>
         <source>The password cannot be empty</source>
-        <translation>密码不能为空</translation>
+        <translation type="unfinished">密码不能为空</translation>
     </message>
     <message>
         <location line="-8"/>
         <source>Enter passphrase to encrypt your session keys:</source>
-        <translation>输入密码以加密你的会话密钥:</translation>
+        <translation type="unfinished">输入密码以加密你的会话密钥:</translation>
     </message>
     <message>
         <location line="+15"/>
         <source>File to save the exported session keys</source>
-        <translation>保存导出的会话密钥的文件</translation>
+        <translation type="unfinished">保存导出的会话密钥的文件</translation>
+    </message>
+</context>
+<context>
+    <name>UserSettingsPage</name>
+    <message>
+        <location filename="../qml/pages/UserSettingsPage.qml" line="+213"/>
+        <source>REQUEST</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <source>DOWNLOAD</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-20"/>
+        <source>CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>NOT CACHED</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>Back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-42"/>
+        <source>IMPORT</source>
+        <translation>导入</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>EXPORT</source>
+        <translation>导出</translation>
     </message>
 </context>
 <context>
     <name>VerificationManager</name>
     <message>
-        <location filename="../../src/encryption/VerificationManager.cpp" line="+106"/>
+        <location filename="../../src/encryption/VerificationManager.cpp" line="+133"/>
         <source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3152,7 +3319,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+18"/>
         <source>Waiting for other side to accept the verification request.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3167,7 +3334,7 @@ This usually causes the application icon in the task bar to animate in some fash
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
+        <location line="+17"/>
         <source>Cancel</source>
         <translation>取消</translation>
     </message>
@@ -3175,22 +3342,22 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>WelcomePage</name>
     <message>
-        <location filename="../../src/WelcomePage.cpp" line="+35"/>
+        <location filename="../qml/pages/WelcomePage.qml" line="+29"/>
         <source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
         <translation>欢迎使用 nheko! Matrix 协议的桌面客户端。</translation>
     </message>
     <message>
-        <location line="+1"/>
+        <location line="+10"/>
         <source>Enjoy your stay!</source>
         <translation>祝您使用愉快!</translation>
     </message>
     <message>
-        <location line="+23"/>
+        <location line="+14"/>
         <source>REGISTER</source>
         <translation>注册</translation>
     </message>
     <message>
-        <location line="+5"/>
+        <location line="+8"/>
         <source>LOGIN</source>
         <translation>登录</translation>
     </message>
@@ -3198,7 +3365,7 @@ This usually causes the application icon in the task bar to animate in some fash
 <context>
     <name>descriptiveTime</name>
     <message>
-        <location filename="../../src/Utils.cpp" line="+192"/>
+        <location filename="../../src/Utils.cpp" line="+193"/>
         <source>Yesterday</source>
         <translation type="unfinished"></translation>
     </message>
-- 
GitLab