Currently translated at 100.0% (488 of 488 strings)
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (486 of 486 strings)
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (485 of 485 strings)
Co-authored-by: Eric <alchemillatruth@purelymail.com>
Translate-URL: https://weblate.tusky.app/projects/tusky/tusky/zh_Hans/
Translation: Tusky/Tusky
Currently translated at 100.0% (485 of 485 strings)
Translated using Weblate (Ukrainian)
Currently translated at 100.0% (485 of 485 strings)
Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://weblate.tusky.app/projects/tusky/tusky/uk/
Translation: Tusky/Tusky
* First attachment crop attempt: Can crop in place, but does not delete/replace on server so has no effect
* Attachment crop feature works
* ktlint fixes on attachment crop patch
* Upgrade Android-Image-Cropper to 4.2.1
* An error message should be displayed if attachment cropping fails and it is not because the user intentionally cancelled.
* Remove 2 of the 3 "state passing" variables by using MediaUtils
* Cropper should use content uri (MIME type bearing) and setOutputCompressFormat so that PNGs reach the server safely.
* Change to crop requested by Conny: Store inflight cropImageItemOld in view model
* Change to crop requested by Conny: Sort cropImage with the other contracts
* ktlint fixes on attachment crop patch (again)
* Show account's creation date in Profile.
* Fix broken test.
* Store account creation date in the Database.
* Reformat and reposition Joined Date according to PR Feedback.
* Revert "Store account creation date in the Database."
This reverts commit d9761f53 as it's not needed.
* Change Account's Creation Date to a java.util.Date.
Update Test.
* Fix wildcard import.
* Show full month instead of an abbreviation.
* Remove `lazy` usage in favor of local instantiation.
Co-authored-by: Martin Marconcini <martin.marconcini.rodriguez@nl.abnamro.com>
Co-authored-by: Konrad Pozniak <connyduck@users.noreply.github.com>
Fixes#793.
This is an implementation for push notifications based on UnifiedPush
for Tusky. No push gateway (other than UP itself) is needed, since
UnifiedPush is simple enough such that it can act as a catch-all
endpoint for WebPush messages. When a UnifiedPush distributor is present
on-device, we will by default register Tusky as a receiver; if no
UnifiedPush distributor is available, then pull notifications are used
as a fallback mechanism.
Because WebPush messages are encrypted, and Mastodon does not send the
keys and IV needed for decryption in the request body, for now the push
handler simply acts as a trigger for the pre-existing NotificationWorker
which is also used for pull notifications. Nevertheless, I have
implemented proper key generation and storage, just in case we would
like to implement full decryption support in the future when Mastodon
upgrades to the latest WebPush encryption scheme that includes all
information in the request body.
For users with existing accounts, push notifications will not be enabled
until all of the accounts have been re-logged in to grant the new push
OAuth scope. A small prompt will be shown (until dismissed) as a
Snackbar to explain to the user about this, and an option is added in
Account Preferences to facilitate re-login without deleting local drafts
and cache.
Currently translated at 99.5% (477 of 479 strings)
Co-authored-by: ButterflyOfFire <butterflyoffire@protonmail.com>
Translate-URL: https://weblate.tusky.app/projects/tusky/tusky/fr/
Translation: Tusky/Tusky
Currently translated at 100.0% (479 of 479 strings)
Translated using Weblate (Gaelic)
Currently translated at 100.0% (479 of 479 strings)
Co-authored-by: GunChleoc <fios@foramnagaidhlig.net>
Translate-URL: https://weblate.tusky.app/projects/tusky/tusky/gd/
Translation: Tusky/Tusky