* Improve login process with newer APIs
* Implement login with WebView instead of browser tab or external browser
Oauth process requires us to open login prompt for correct instance and
we need to receive the result back. Usually it is done with redirect
parameter.
Previously we've been using BrowserTabs API and have been falling back
to just opening browser. This mostly worked but is very clumsy:
- It relies on few system mechanisms for opening URLs in both
directions
- Browsers do weird things and tend to break quite a bit
- There's a good chance that the app can die in the process and we need
to recover our state.
So instead we are now using WebView. It has disadvantages (users have
to trust us to show correct page, logins are not shared w/ browser) but
it should be more reliable.
* Changes to login after review
* Move login classes to their own package
* Fix linting issues
Currently translated at 100.0% (468 of 468 strings)
Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/is/
Translation: Tusky/Tusky
Currently translated at 100.0% (468 of 468 strings)
Co-authored-by: GunChleoc <fios@foramnagaidhlig.net>
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/gd/
Translation: Tusky/Tusky
Currently translated at 100.0% (468 of 468 strings)
Co-authored-by: Hồ Nhất Duy <kantcer@gmail.com>
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/vi/
Translation: Tusky/Tusky
Currently translated at 100.0% (468 of 468 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% (468 of 468 strings)
Translated using Weblate (Occitan)
Currently translated at 97.2% (455 of 468 strings)
Translated using Weblate (Arabic)
Currently translated at 98.9% (463 of 468 strings)
Co-authored-by: ButterflyOfFire <butterflyoffire@protonmail.com>
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/ar/
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/fr/
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/oc/
Translation: Tusky/Tusky
Currently translated at 100.0% (462 of 462 strings)
Co-authored-by: Jonathan Soares <vsrw5bfj@duck.com>
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/pt_BR/
Translation: Tusky/Tusky
* update Android Image Cropper and get rid of deprecated onActivityResult
* add comment why skipping caches is necessary
* inject application into EditProfileViewModel instead of passing it everytime
* Add data model for instance configuration
* Support instance.configuration.statuses.max_characters
* Support instance.configuration.statuses.characters_reserved_per_url
* Support instance.configuration.polls.max_options and max_characters_per_option
* Pacify ktlint
* Support instance-configured poll durations
* Fixup versions for migration after rebase
Currently translated at 100.0% (462 of 462 strings)
Co-authored-by: Eric <alchemillatruth@purelymail.com>
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/zh_Hans/
Translation: Tusky/Tusky
* Migrate LinkHelper to kotlin
* Support tags field on statuses
* Use embedded tags list in status instead of text scraping to embed tag click handler.
Fixes#2283
* Make mentions and tags lists nonnullable
* Make LinkHelper.openLink a Context extension method
* Use builtin extension for uri conversion
* More cleanup in LinkHelper
* Add tests for LinkHelper.getDomain
* Unbreak tags in places that don't have a tag list (e.g. profiles)
* Fixup javadoc
Currently translated at 100.0% (462 of 462 strings)
Co-authored-by: Connyduck <weblate@connyduck.at>
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/de/
Translation: Tusky/Tusky
Currently translated at 98.9% (457 of 462 strings)
Translated using Weblate (Irish)
Currently translated at 92.2% (426 of 462 strings)
Translated using Weblate (Thai)
Currently translated at 97.8% (452 of 462 strings)
Translated using Weblate (Slovenian)
Currently translated at 85.4% (395 of 462 strings)
Translated using Weblate (Occitan)
Currently translated at 98.4% (455 of 462 strings)
Translated using Weblate (Dutch)
Currently translated at 99.5% (460 of 462 strings)
Translated using Weblate (Persian)
Currently translated at 99.3% (459 of 462 strings)
Co-authored-by: Connyduck <weblate@connyduck.at>
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/bn_BD/
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/fa/
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/ga/
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/nl/
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/oc/
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/sl/
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/th/
Translation: Tusky/Tusky
Currently translated at 100.0% (462 of 462 strings)
Co-authored-by: Hồ Nhất Duy <kantcer@gmail.com>
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/vi/
Translation: Tusky/Tusky
Currently translated at 100.0% (462 of 462 strings)
Translated using Weblate (Russian)
Currently translated at 100.0% (462 of 462 strings)
Translated using Weblate (Russian)
Currently translated at 100.0% (462 of 462 strings)
Translated using Weblate (Russian)
Currently translated at 100.0% (462 of 462 strings)
Co-authored-by: Vladyslav Stepanov <wrottkitkatt@gmail.com>
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/ru/
Translation: Tusky/Tusky
Currently translated at 100.0% (462 of 462 strings)
Translated using Weblate (Esperanto)
Currently translated at 99.7% (461 of 462 strings)
Co-authored-by: Mélanie Chauvel <perso@hack-libre.org>
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/eo/
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/fr/
Translation: Tusky/Tusky
Currently translated at 54.5% (252 of 462 strings)
Translated using Weblate (Arabic)
Currently translated at 98.9% (457 of 462 strings)
Co-authored-by: ButterflyOfFire <butterflyoffire@protonmail.com>
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/ar/
Translate-URL: https://"weblate.tusky.app"/projects/tusky/tusky/kab/
Translation: Tusky/Tusky