summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.md5
-rw-r--r--resources/langs/nheko_et.ts52
-rw-r--r--resources/langs/nheko_fi.ts4
-rw-r--r--resources/langs/nheko_hu.ts42
-rw-r--r--src/Cache.cpp33
5 files changed, 72 insertions, 64 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md

index 958c2314..45155539 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md
@@ -21,8 +21,9 @@ - Before a call select which audio device to use. (contributed by trilene) - Auto request unknown keys from your own devices. -- Add a command to clear the timeline and reload it (/clear-timeline). -- Add a command to rotate the outbound megolm session (/rotate-megolm-session). +- Add a command to clear the timeline and reload it. (/clear-timeline). +- Add a command to rotate the outbound megolm session. (/rotate-megolm-session). +- React to messages instead of replying with arbitrary strings using `/react`. - Inline emoji and user completers. (contributed by Lurkki) - Show filename on hover over an image. (contributed by kamathmanu) - Mobile mode, that disables text selection and changes some dialogs. diff --git a/resources/langs/nheko_et.ts b/resources/langs/nheko_et.ts
index afaaa612..1a00659b 100644 --- a/resources/langs/nheko_et.ts +++ b/resources/langs/nheko_et.ts
@@ -792,7 +792,7 @@ Näiteks: https://server.minu:8787</translation> <message> <location line="+15"/> <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 %1 now?</source> - <translation type="unfinished"></translation> + <translation>Selleks, et muud kasutajad automaatselt usaldaks sinu seadmeid, peaksid nad verifitseerima. Samaga muutub ka krüptovõtmete varundus automaatseks. Kas verifitseerime seadme %1?</translation> </message> <message> <location line="+2"/> @@ -812,7 +812,7 @@ Näiteks: https://server.minu:8787</translation> <message> <location line="+2"/> <source>Your device (%1) has requested to be verified.</source> - <translation type="unfinished"></translation> + <translation>Sinu seadme (%1) jaoks on saabunud verifitseerimispäring.</translation> </message> <message> <location line="+10"/> @@ -948,7 +948,7 @@ Näiteks: https://server.minu:8787</translation> <message> <location line="+209"/> <source>One or more fields have invalid inputs. Please correct those issues and try again.</source> - <translation type="unfinished"></translation> + <translation>Ühel või enamal andmeväljal on vigane väärtus. Palun paranda vead ja proovi uuesti.</translation> </message> <message> <location line="-26"/> @@ -1348,7 +1348,7 @@ Näiteks: https://server.minu:8787</translation> <message> <location line="+5"/> <source>Remove message</source> - <translation type="unfinished"></translation> + <translation>Eemalda sõnum</translation> </message> <message> <location line="+7"/> @@ -1366,7 +1366,7 @@ Näiteks: https://server.minu:8787</translation> <message> <location filename="../../src/timeline/TimelineViewManager.cpp" line="+423"/> <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> + <translation>Ühtegi krüptitud vestlust selle kasutajaga ei leidunud. Palun loo temaga krüptitud vestlus ja proovi uuesti.</translation> </message> </context> <context> @@ -1522,17 +1522,17 @@ Näiteks: https://server.minu:8787</translation> <message> <location line="+46"/> <source>Cross Signing Keys</source> - <translation type="unfinished"></translation> + <translation>Risttunnustamise võtmed</translation> </message> <message> <location line="+4"/> <source>REQUEST</source> - <translation type="unfinished"></translation> + <translation>PÄRING</translation> </message> <message> <location line="+1"/> <source>DOWNLOAD</source> - <translation type="unfinished"></translation> + <translation>ALLALAADIMISED</translation> </message> <message> <location line="+27"/> @@ -1683,17 +1683,17 @@ See tavaliselt tähendab, et rakenduse ikoon tegumiribal annab mingit sorti anim <message> <location line="+56"/> <source>Share keys with verified users and devices</source> - <translation type="unfinished"></translation> + <translation>Jaga võtmeid verifitseeritud kasutajate ja seadmetega</translation> </message> <message> <location line="+395"/> <source>CACHED</source> - <translation type="unfinished"></translation> + <translation>PUHVERDATUD</translation> </message> <message> <location line="+6"/> <source>NOT CACHED</source> - <translation type="unfinished"></translation> + <translation>PUHVERDAMATA</translation> </message> <message> <location line="-449"/> @@ -1723,27 +1723,27 @@ See tavaliselt tähendab, et rakenduse ikoon tegumiribal annab mingit sorti anim <message> <location line="+4"/> <source>Ringtone</source> - <translation type="unfinished"></translation> + <translation>Kõnehelin</translation> </message> <message> <location line="+2"/> <source>Set the notification sound to play when a call invite arrives</source> - <translation type="unfinished"></translation> + <translation>Seadista helin, mis annab märku uuest kõnest</translation> </message> <message> <location line="+1"/> <source>Microphone</source> - <translation type="unfinished"></translation> + <translation>Mikrofon</translation> </message> <message> <location line="+1"/> <source>Camera</source> - <translation type="unfinished"></translation> + <translation>Kaamera</translation> </message> <message> <location line="+1"/> <source>Camera resolution</source> - <translation type="unfinished"></translation> + <translation>Kaamera eraldusvõime</translation> </message> <message> <location line="+1"/> @@ -1808,7 +1808,7 @@ See tavaliselt tähendab, et rakenduse ikoon tegumiribal annab mingit sorti anim <message> <location line="+2"/> <source>Will prevent text selection in the timeline to make touch scrolling easier.</source> - <translation type="unfinished"></translation> + <translation>Selleks, et puutega kerimine oleks lihtsam, blokeerib see seadistus tekstivaliku ajajoonel.</translation> </message> <message> <location line="+12"/> @@ -1823,42 +1823,42 @@ See tavaliselt tähendab, et rakenduse ikoon tegumiribal annab mingit sorti anim <message> <location line="+5"/> <source>Master signing key</source> - <translation type="unfinished"></translation> + <translation>Üldine allkirjavõti</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 type="unfinished"></translation> + <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> </message> <message> <location line="+3"/> <source>User signing key</source> - <translation type="unfinished"></translation> + <translation>Kasutaja allkirjavõti</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 type="unfinished"></translation> + <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> </message> <message> <location line="+3"/> <source>Self signing key</source> - <translation type="unfinished"></translation> + <translation>Omatunnustusvõti</translation> </message> <message> <location line="+2"/> <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> + <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> </message> <message> <location line="+3"/> <source>Backup key</source> - <translation type="unfinished"></translation> + <translation>Varundusvõti</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> + <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> </message> <message> <location line="+54"/> @@ -1918,7 +1918,7 @@ See tavaliselt tähendab, et rakenduse ikoon tegumiribal annab mingit sorti anim <message> <location filename="../qml/device-verification/Waiting.qml" line="+7"/> <source>Waiting for other party…</source> - <translation type="unfinished"></translation> + <translation>Ootan teise osapoole tegevust…</translation> </message> <message> <location line="+15"/> diff --git a/resources/langs/nheko_fi.ts b/resources/langs/nheko_fi.ts
index b69617e0..f5a6a3ab 100644 --- a/resources/langs/nheko_fi.ts +++ b/resources/langs/nheko_fi.ts
@@ -2236,9 +2236,7 @@ Median koko: %2 <source>Whether or not the client should respond automatically with the session keys upon request. Use with caution, this is a temporary measure to test the E2E implementation until device verification is completed.</source> - <translation>Pitäisikö asiakasohjelman palauttaa salausavaimet automaattisesti pyydettäessä. - Käytä varoen, tämä on väliaikainen vaihtoehto salausjärjestelmän testausta varten, - kunnes laitteiden vahvistus on valmis.</translation> + <translation>Pitäisikö asiakasohjelman palauttaa salausavaimet automaattisesti pyydettäessä. Käytä varoen, tämä on väliaikainen vaihtoehto salausjärjestelmän testausta varten, kunnes laitteiden vahvistus on valmis.</translation> </message> <message numerus="yes"> <location line="+80"/> diff --git a/resources/langs/nheko_hu.ts b/resources/langs/nheko_hu.ts
index bfafb6c2..616c5788 100644 --- a/resources/langs/nheko_hu.ts +++ b/resources/langs/nheko_hu.ts
@@ -168,67 +168,67 @@ <message> <location line="+16"/> <source>Kicked user: %1</source> - <translation type="unfinished"></translation> + <translation>Kirúgott felhasználó: %1</translation> </message> <message> <location line="+10"/> <source>Confirm ban</source> - <translation type="unfinished"></translation> + <translation>Kitiltás megerősítése</translation> </message> <message> <location line="+1"/> <source>Do you really want to ban %1 (%2)?</source> - <translation type="unfinished"></translation> + <translation>Biztosan ki akarod tiltani %1 (%2) felhasználót?</translation> </message> <message> <location line="+11"/> <source>Failed to ban %1 in %2: %3</source> - <translation type="unfinished"></translation> + <translation>Nem sikerült kitiltani %1 felhasználót a %2 szobából: %3</translation> </message> <message> <location line="+5"/> <source>Banned user: %1</source> - <translation type="unfinished"></translation> + <translation>Kitiltott felhasználó: %1</translation> </message> <message> <location line="+10"/> <source>Confirm unban</source> - <translation type="unfinished"></translation> + <translation>Kitiltás feloldásának megerősítése</translation> </message> <message> <location line="+1"/> <source>Do you really want to unban %1 (%2)?</source> - <translation type="unfinished"></translation> + <translation>Biztosan fel akarod oldani %1 (%2) felhasználó kitiltását?</translation> </message> <message> <location line="+11"/> <source>Failed to unban %1 in %2: %3</source> - <translation type="unfinished"></translation> + <translation>Nem sikerült feloldani %1 felhasználó kitiltását a %2 szobából: %3</translation> </message> <message> <location line="+5"/> <source>Unbanned user: %1</source> - <translation type="unfinished"></translation> + <translation>Kitiltás feloldva a felhasználónak: %1</translation> </message> <message> <location line="-582"/> <source>Cache migration failed!</source> - <translation type="unfinished"></translation> + <translation>Gyorsítótár migráció nem sikerült!</translation> </message> <message> <location line="+13"/> <source>Incompatible cache version</source> - <translation type="unfinished"></translation> + <translation>Inkompatibilis gyorsítótár-verzió</translation> </message> <message> <location line="+1"/> <source>The cache on your disk is newer than this version of Nheko supports. Please update or clear your cache.</source> - <translation type="unfinished"></translation> + <translation>A lemezeden lévő gyorsítótár újabb, mint amit a Nheko jelenlegi verziója támogat. Kérlek, frissítsd vagy töröld a gyorsítótárat!</translation> </message> <message> <location line="+50"/> <source>Failed to restore OLM account. Please login again.</source> - <translation type="unfinished"></translation> + <translation>Nem sikerült visszaállítani az OLM fiókot. Kérlek, jelentkezz be ismét!</translation> </message> <message> <location line="+4"/> @@ -373,7 +373,7 @@ <message> <location line="+1"/> <source>Cancel</source> - <translation type="unfinished">Mégse</translation> + <translation>Mégse</translation> </message> <message> <location line="+10"/> @@ -813,7 +813,7 @@ Example: https://server.my:8787</source> <message> <location line="+10"/> <source>Cancel</source> - <translation type="unfinished">Mégse</translation> + <translation>Mégse</translation> </message> <message> <location line="+0"/> @@ -828,7 +828,7 @@ Example: https://server.my:8787</source> <message> <location line="+0"/> <source>Accept</source> - <translation type="unfinished">Elfogadás</translation> + <translation>Elfogadás</translation> </message> </context> <context> @@ -841,7 +841,7 @@ Example: https://server.my:8787</source> <message> <location line="+16"/> <source>No microphone found.</source> - <translation type="unfinished">Nem található mikrofon.</translation> + <translation>Nem található mikrofon.</translation> </message> <message> <location line="+22"/> @@ -856,7 +856,7 @@ Example: https://server.my:8787</source> <message> <location line="+13"/> <source>Cancel</source> - <translation type="unfinished">Mégse</translation> + <translation>Mégse</translation> </message> </context> <context> @@ -1035,12 +1035,12 @@ Example: https://server.my:8787</source> <message> <location line="+169"/> <source>Accept</source> - <translation type="unfinished">Elfogadás</translation> + <translation>Elfogadás</translation> </message> <message> <location line="+3"/> <source>Decline</source> - <translation type="unfinished">Elutasítás</translation> + <translation>Elutasítás</translation> </message> </context> <context> @@ -1266,7 +1266,7 @@ Example: https://server.my:8787</source> <message> <location line="-749"/> <source>You joined this room.</source> - <translation type="unfinished">Csatlakoztál ehhez a szobához.</translation> + <translation>Csatlakoztál ehhez a szobához.</translation> </message> <message> <location line="+751"/> diff --git a/src/Cache.cpp b/src/Cache.cpp
index 389df0a3..e2aecca2 100644 --- a/src/Cache.cpp +++ b/src/Cache.cpp
@@ -2688,10 +2688,13 @@ Cache::saveTimelineMessages(lmdb::txn &txn, if (event.contains("content") && event["content"].contains("m.relates_to")) { - auto temp = event["content"]["m.relates_to"]; - std::string relates_to = temp.contains("m.in_reply_to") - ? temp["m.in_reply_to"]["event_id"] - : temp["event_id"]; + auto temp = event["content"]["m.relates_to"]; + json relates_to_j = temp.contains("m.in_reply_to") && + temp["m.in_reply_to"].is_object() + ? temp["m.in_reply_to"]["event_id"] + : temp["event_id"]; + std::string relates_to = + relates_to_j.is_string() ? relates_to_j.get<std::string>() : ""; if (!relates_to.empty()) { lmdb::dbi_del(txn, @@ -2780,10 +2783,13 @@ Cache::saveTimelineMessages(lmdb::txn &txn, if (event.contains("content") && event["content"].contains("m.relates_to")) { - auto temp = event["content"]["m.relates_to"]; - std::string relates_to = temp.contains("m.in_reply_to") - ? temp["m.in_reply_to"]["event_id"] - : temp["event_id"]; + auto temp = event["content"]["m.relates_to"]; + json relates_to_j = temp.contains("m.in_reply_to") && + temp["m.in_reply_to"].is_object() + ? temp["m.in_reply_to"]["event_id"] + : temp["event_id"]; + std::string relates_to = + relates_to_j.is_string() ? relates_to_j.get<std::string>() : ""; if (!relates_to.empty()) lmdb::dbi_put( @@ -2869,10 +2875,13 @@ Cache::saveOldMessages(const std::string &room_id, const mtx::responses::Message } if (event.contains("content") && event["content"].contains("m.relates_to")) { - auto temp = event["content"]["m.relates_to"]; - std::string relates_to = temp.contains("m.in_reply_to") - ? temp["m.in_reply_to"]["event_id"] - : temp["event_id"]; + auto temp = event["content"]["m.relates_to"]; + json relates_to_j = + temp.contains("m.in_reply_to") && temp["m.in_reply_to"].is_object() + ? temp["m.in_reply_to"]["event_id"] + : temp["event_id"]; + std::string relates_to = + relates_to_j.is_string() ? relates_to_j.get<std::string>() : ""; if (!relates_to.empty()) lmdb::dbi_put(txn, relationsDb, lmdb::val(relates_to), event_id);