Commit graph

2883 commits

Author SHA1 Message Date
ERYpTION
b8b86634c9
Translated using Weblate (Danish)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/da/
2024-07-14 10:09:18 +02:00
Alexander Gabilondo
b6fb257983
Translated using Weblate (Basque)
Currently translated at 17.7% (19 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/eu/
2024-06-26 00:09:47 +02:00
VKing9
6df9cafc9f
Translated using Weblate (Hindi (Hinglish))
Currently translated at 20.0% (1 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/hi@hinglish/
2024-06-07 07:51:18 +02:00
VfBFan
074ea506de
Translated using Weblate (German)
Currently translated at 100.0% (5 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/de/
2024-05-22 23:02:09 +02:00
Dan
c8112adf30
Translated using Weblate (Ukrainian)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/uk/
2024-05-22 23:02:08 +02:00
Tom Levy
99cea602c8 Fix deletion of random SMS when trying to update threads
Commit 44c540b9 (Fixed updating last message after deleting (#167),
2021-09-04) introduced a hack to update the conversation snippet,
however there is a bug in that code: it tries to delete by thread ID,
but the condition is applied to the SMS table, not to the threads
table.[1] So instead of deleting the thread with that ID, it deletes
whichever SMS happens to have that ID.

The fix is to change the condition to an always-false condition, so
that no messages will be deleted. The threads will still get
updated.[2]

Fixes #148.

[1] https://android.googlesource.com/platform/packages/providers/TelephonyProvider/+/android14-release/src/com/android/providers/telephony/MmsSmsProvider.java#1405
[2] https://android.googlesource.com/platform/packages/providers/TelephonyProvider/+/android14-release/src/com/android/providers/telephony/MmsSmsProvider.java#1409
2024-05-20 01:43:25 +00:00
Tom Levy
a7edeae6f3 Use streams to encode and decode the JSON backups
This significantly reduces memory usage.

(We buffer the OutputStream because kotlinx.serialization flushes its
internal buffers excessively[1]. We also buffer the InputStream for
consistency, even though kotlinx.serialization uses adequate
buffering; there is no performance impact because BufferedInputStream
cascades harmlessly[2].)

The functions encodeToStream() and decodeFromStream() are marked as
experimental, but this is a pretty fundamental use case so surely it
will continue to be supported in the future (maybe with minor
changes).

Fixes #6.

[1] https://github.com/Kotlin/kotlinx.serialization/blob/v1.6.3/formats/json/jvmMain/src/kotlinx/serialization/json/internal/JvmJsonStreams.kt#L46
[2] https://github.com/openjdk/jdk/blob/jdk-23%2B14/src/java.base/share/classes/java/io/BufferedInputStream.java#L339
2024-05-20 01:43:25 +00:00
Tom Levy
b18e8aa11e Allow importing files with MIME type "application/octet-stream"
Sometimes Android reports the MIME type as "application/octet-stream"
even if the file has a .json extension (specifically, on Android 8 and
9 for backups exported outside the Download folder). Previously, such
files could not be selected in the file picker when importing.

As a workaround, allow files with that MIME type.

Fixes #88.
2024-05-20 01:43:25 +00:00
Tom Levy
7e2202b64a Fix missing .json file extension when exporting messages
Very similar to FossifyOrg/Notes#14 (which has a more detailed commit
message). Basically, some file pickers don't automatically append the
extension, so we should do it ourselves. It doesn't cause problems.

Reported in #88.
2024-05-20 01:43:25 +00:00
Tom Levy
dd2cc7f0e2 Refactor extensions/Context.kt slightly
No behaviour change.

- Simplify insertOrUpdateConversation(), since the previous code was long and
  hard to follow.

- Inline constants into selection queries instead of using '?' arguments.
2024-05-20 01:43:25 +00:00
Tom Levy
9534a1031a Delete exported file on error
If ActivityResultContracts.CreateDocument launches the native Files
app (com.android.documentsui), then it will create the file before the
Uri is returned to us.

So if we don't complete the export (due to an exception or because
there are no messages) we should delete the file, otherwise there will
be an empty/incomplete file left behind.
2024-05-20 01:43:25 +00:00
Tom Levy
1198a8c495 Report OutOfMemoryError when importing and exporting messages
When importing/exporting large files we can run out of memory, in
which case we should display a toast to the user (as we do for other
exceptions). Previously, the OutOfMemoryError was not caught because
it inherits from Error, not from Exception.

(We have to manually call .toString() because Context.showErrorToast()
from Commons takes an Exception or a String, not Throwable.)
2024-05-20 01:43:25 +00:00
Umut Solmz
27025e084b
Translated using Weblate (Turkish)
Currently translated at 100.0% (5 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/tr/
2024-05-19 22:30:55 +02:00
Umut Solmz
c35819c52d
Translated using Weblate (Turkish)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/tr/
2024-05-19 22:30:54 +02:00
Guillaume
7dbbe2ba00
Translated using Weblate (Dutch)
Currently translated at 60.0% (3 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/nl/
2024-05-19 22:30:54 +02:00
Jeroen
f51ff006f8
Translated using Weblate (Dutch)
Currently translated at 60.0% (3 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/nl/
2024-05-19 22:30:53 +02:00
Alexander Gabilondo
cce8fd6ed4
Translated using Weblate (Basque)
Currently translated at 20.0% (1 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/eu/
2024-05-19 22:30:53 +02:00
Azizov Aga
ae4be909a9
Translated using Weblate (Azerbaijani)
Currently translated at 20.0% (1 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/az/
2024-05-19 22:30:52 +02:00
lucasmz
4c0214c4a2
Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/pt_BR/
2024-05-19 22:30:52 +02:00
Ali Najafi
f071c1a07c
Translated using Weblate (Persian)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/fa/
2024-05-19 22:30:51 +02:00
GuitarBilly
48674d0e29
Translated using Weblate (Dutch)
Currently translated at 60.0% (3 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/nl/
2024-05-19 22:30:51 +02:00
張可揚
dd57c75c39
Translated using Weblate (Chinese (Traditional))
Currently translated at 60.0% (3 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/zh_Hant/
2024-05-19 22:30:50 +02:00
A
1ca2af01e5
Translated using Weblate (Finnish)
Currently translated at 80.0% (4 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/fi/
2024-05-19 22:30:49 +02:00
A
76e6097431
Translated using Weblate (Finnish)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/fi/
2024-05-19 22:30:49 +02:00
張可揚
5dcfe45ef8
Translated using Weblate (Chinese (Traditional))
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/zh_Hant/
2024-05-19 22:30:48 +02:00
Josep M. Ferrer
a0abab71c8
Translated using Weblate (Catalan)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/ca/
2024-05-19 22:30:48 +02:00
antodc
3fba41ac85
Translated using Weblate (Italian)
Currently translated at 80.0% (4 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/it/
2024-05-19 22:30:47 +02:00
Argo Carpathians
f90f5f77d4
Translated using Weblate (Indonesian)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/id/
2024-05-19 22:30:47 +02:00
Argo Carpathians
202f58ad37
Translated using Weblate (Indonesian)
Currently translated at 83.1% (89 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/id/
2024-05-19 22:30:46 +02:00
Priit Jõerüüt
e4e4d3f884
Translated using Weblate (Estonian)
Currently translated at 100.0% (5 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/et/
2024-05-19 22:30:46 +02:00
Priit Jõerüüt
9c75dab8f3
Translated using Weblate (Estonian)
Currently translated at 100.0% (5 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/et/
2024-05-19 22:30:45 +02:00
Anonymous
9c4b0a666c
Translated using Weblate (Danish)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/da/
2024-05-19 22:30:45 +02:00
cat
acfaa76f31
Translated using Weblate (Danish)
Currently translated at 100.0% (5 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/da/
2024-05-19 22:30:44 +02:00
Guillaume
ce8dff6fd6
Translated using Weblate (Dutch)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/nl/
2024-05-19 22:30:43 +02:00
Igor Sorocean
79205e8007
Translated using Weblate (Romanian)
Currently translated at 40.0% (2 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/ro/
2024-05-19 22:30:43 +02:00
Igor Sorocean
3328ec66b0
Translated using Weblate (Romanian)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/ro/
2024-05-19 22:30:42 +02:00
Dan
dac91b350f
Translated using Weblate (Ukrainian)
Currently translated at 20.0% (1 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/uk/
2024-05-19 22:30:42 +02:00
ngocanhtve
6d83eb01fd
Translated using Weblate (Vietnamese)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/vi/
2024-05-19 22:30:41 +02:00
Mbuni21
371813f893
Translated using Weblate (Hebrew)
Currently translated at 61.6% (66 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/he/
2024-05-19 22:30:41 +02:00
Balázs Meskó
c740d662f1
Translated using Weblate (Hungarian)
Currently translated at 20.0% (1 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/hu/
2024-05-19 22:30:40 +02:00
Salif Mehmed
210d55415e
Translated using Weblate (Bulgarian)
Currently translated at 20.0% (1 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/bg/
2024-05-19 22:30:40 +02:00
Linerly
ee45edb347
Translated using Weblate (Indonesian)
Currently translated at 20.0% (1 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/id/
2024-05-19 22:30:39 +02:00
VfBFan
b237ca64ee
Translated using Weblate (German)
Currently translated at 100.0% (5 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/de/
2024-05-19 22:30:39 +02:00
gallegonovato
472d82610d
Translated using Weblate (Spanish)
Currently translated at 100.0% (5 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/es/
2024-05-19 22:30:38 +02:00
Agnieszka C
9933c018f5
Translated using Weblate (Polish)
Currently translated at 60.0% (3 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/pl/
2024-05-19 22:30:37 +02:00
Omnipresent Reader
b44e486a09
Translated using Weblate (Romanian)
Currently translated at 20.0% (1 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/ro/
2024-05-19 22:30:37 +02:00
Flavio F. M
ca6c59c98b
Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/pt_BR/
2024-05-19 22:30:36 +02:00
Fjuro
e601931ce1
Translated using Weblate (Czech)
Currently translated at 100.0% (5 of 5 strings)

Translation: Fossify/Messages metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger-metadata/cs/
2024-05-19 22:30:36 +02:00
Gabriel Canaple
e9a54eded9
Translated using Weblate (French)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/fr/
2024-05-19 22:30:35 +02:00
SalaryTheft
08669048d3
Translated using Weblate (Korean)
Currently translated at 100.0% (107 of 107 strings)

Translation: Fossify/Messages
Translate-URL: https://hosted.weblate.org/projects/fossify/sms-messenger/ko/
2024-05-19 22:30:35 +02:00