- Adds a new cell on the "Everything"-notification-screen to show unwanted notifications - Users can define what "unwanted" means to them using the new "Filter"-button in the upper right corner of the Notification-screen - Filtered notifications are sorted by account and users can dismiss/accept if they want to get notifications of that user (it's some standard table-views and delegates) ## Screenshots ![ios_241_1](https://github.com/user-attachments/assets/b2297a13-e220-4916-b3b9-24dfcef431de) ![ios_241_2](https://github.com/user-attachments/assets/5fd5b894-cd4e-40f9-abce-56ff17d41dfa)
Localization
We use Crowdin for translations and some automation.
How to contribute
Help with translations
Head over Crowdin for that. To help with translations, select your language and translate :-) If your language is not in the list, please feel free to open a topic on Crowdin.
Please note: You need to have an account on Crowdin to help with translations.
Add new strings
This is mainly for developers.
- Add new strings in
Localization/app.json
and theLocalizable.strings
for English. - Run
swiftgen
to generate theStrings.swift
-file or have Xcode build the app (swiftgen
is a Build phase, too). - Use
import MastodonLocalization
and its (new)L10n
-enum and its properties where ever you need them in the app. - Once the updated
Localization/app.json
hitsdevelop
, it gets synced to Crowdin, where people can help with translations.Localization/app.json
must be a valid json.
How to update translations
If there are new translations, Crowdin pushes new commits to a branch called l10n_develop
and creates a new Pull Request. Both, the branch and the PR might be updated once an hour. The project itself uses a script to generate the various Localizable.strings
-files etc. for Xcode.
To update or add new translations, the workflow is as follows:
- Merge the PR with
l10n_develop
intodevelop
. It's usually calledNew Crowdin Updates
- Run
update_localization.sh
on your computer. - Commit the changes and push
develop
.