Commit graph

361 commits

Author SHA1 Message Date
d0cb775710 Bump version for intermediate test release 2023-07-31 06:32:45 +10:00
f9a29a6b76 Merge tag 'v21.0' into develop 2023-07-30 19:51:49 +10:00
b9b097c69a Merge tag 'v20.0' into develop 2023-07-30 18:04:03 +10:00
eeeb6a8599 Merge tag 'v19.0' into develop 2023-07-30 17:50:50 +10:00
Conny Duck
be935655a5 Release 100 2023-02-03 20:10:46 +01:00
Conny Duck
29bd5dd91d Release 99 2023-01-28 13:08:42 +01:00
Conny Duck
387c1a4404 Release 98 2023-01-27 21:11:31 +01:00
Jake Wharton
c4d569314f
Remove old opt-in for RequiresOptIn (#3167)
As of Kotlin 1.7 the opt-in feature is now stable and does not need an explicit declaration.

https://kotlinlang.org/docs/whatsnew17.html#stable-opt-in-requirements
2023-01-12 19:41:35 +01:00
Nik Clayton
8eb195cff6
Enable robolectric logging (#3143)
Robolectric normally swallows output from `Log.*` calls in tests and
the code under test. This can make debugging failing tests more
difficult than it needs to be.

Set `robolectric.logging.enabled` to `true` to enable the logs.
2023-01-12 19:10:11 +01:00
Konrad Pozniak
59c24381a3
replace Manifest package with Gradle namespace (#3007) 2022-12-06 20:32:26 +01:00
Konrad Pozniak
564caf4e9d
don't include dependency info in apk (#2995) 2022-12-05 19:13:15 +01:00
Konrad Pozniak
b53f097d45 Release 97 2022-11-30 20:01:33 +01:00
Conny Duck
8437fbd605 Release 96 2022-11-25 19:11:54 +01:00
Conny Duck
8ee69df29a Release 95 2022-11-19 19:42:50 +01:00
Eva Tatarka
b39cb06748
Navigate to the Follow Requests page from notification (#2757)
* Navigate to the Follow Requests page from notification

Fixes #2655

* Fix lock status
2022-11-07 20:04:07 +01:00
Colin Lee
3fb1173d3f
Introduce Gradle version catalogs for versioning (#2745)
* Introduce Gradle version catalogs for versioning

* Correct some versions for version catalogs
2022-11-04 20:10:26 +01:00
Konrad Pozniak
d17a0c43ab
Api 33 support (#2719)
* update to Api 33, fix some deprecations

* fix deprecated serializable/parcelable methods

* ask for notification permission

* fix code formatting

* add back comment in PreferencesActivity
2022-11-04 19:22:38 +01:00
Konrad Pozniak
ffe42c992f
update okhttp to 4.10.0 (#2696) 2022-09-13 19:48:20 +02:00
Konrad Pozniak
9beea540de
upgrade glide to 4.13.2 (#2673) 2022-08-16 20:33:19 +02:00
Konrad Pozniak
95191bbb8d
upgrade glide animation plugin to 2.23.0 (#2674) 2022-08-16 20:09:40 +02:00
Konrad Pozniak
19ef80432a
upgrade unified push connector to 2.0.1 (#2672) 2022-08-16 20:08:23 +02:00
Konrad Pozniak
94ae64b52d
upgrade android image cropper to 4.3.1 (#2669) 2022-08-16 20:06:59 +02:00
Konrad Pozniak
46278636f4
upgrade mockito-inline to 4.7.0 (#2668) 2022-08-16 20:06:48 +02:00
Konrad Pozniak
3c7bfb7047
upgrade okhttp to 4.10.0 (#2666) 2022-08-16 20:06:22 +02:00
Konrad Pozniak
30c87e04e2
upgrade dagger to 2.43.2 (#2665) 2022-08-16 20:06:00 +02:00
Levi Bard
decd8a0f4b
Upgrade robolectric (#2664)
* Upgrade robolectric to 4.8.1

* Make TimelineDAO cleanup test deterministic
2022-08-15 11:01:17 +02:00
Konrad Pozniak
1c11671f3e
update kotlin coroutines to 1.6.4 (#2648) 2022-08-07 19:36:20 +02:00
Konrad Pozniak
68c9870b19
update AndroidX dependencies (#2641)
* update AndroidX dependencies

* fix ComposeActivityTest
2022-08-07 19:13:59 +02:00
Konrad Pozniak
55796c9a30
update minSdkVersion to 23 (#2638)
closes #2606
2022-08-04 16:48:26 +02:00
Constantin A
25f637f0a8
Set FilemojiCompat to version 3.2.3 (#2611) 2022-07-25 12:36:35 +02:00
Conny Duck
3ae18fd923 Release 94 2022-07-11 18:41:21 +02:00
Conny Duck
3a4a7d8701 Release 93 2022-07-05 18:30:57 +02:00
Konrad Pozniak
86403ac6dc
add test for InstanceSwitchAuthInterceptor and convert it to Kotlin (#2596)
* add test for InstanceSwitchAuthInterceptor

* improve InstanceSwitchAuthInterceptorTest

* Rename .java to .kt

* convert InstanceSwitchAuthInterceptor to Kotlin

* fix ktlint issues

* improve InstanceSwitchAuthInterceptorTest

* improve InstanceSwitchAuthInterceptorTest
2022-06-30 21:25:44 +02:00
Conny Duck
0375aa1d18 release 92 2022-06-20 17:05:22 +02:00
474fca8f86 Merge tag 'v18.0' into develop 2022-06-14 22:53:13 +10:00
ea95fc2f4b Merge tag 'v17.0' into develop 2022-06-06 16:57:59 +10:00
450f9f310e Merge tag 'v16.0' 2022-06-01 21:45:02 +10:00
Konrad Pozniak
e1c8461423
replace kotlin-result-calladapter with networkresult-calladapter (#2569)
* replace kotlin-result-calladapter with networkresult-calladapter

* fix tests
2022-05-30 20:03:40 +02:00
Konrad Pozniak
579f0eb833
update android animation glide plugin to 2.22.0 (#2557) 2022-05-29 19:21:44 +02:00
Constantin A
9139e7bbf1
Set FilemojiCompat to version 3.2.2 (#2553) 2022-05-25 20:55:00 +02:00
mcclure
00c139190e
Ability to crop images attached to posts (#2531)
* 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)
2022-05-22 21:01:14 +02:00
Konrad Pozniak
bdd94d43c5
update android material to 1.6.0 (#2524) 2022-05-17 19:56:12 +02:00
Konrad Pozniak
7a5175c266
update dagger to 2.42 (#2523) 2022-05-17 19:55:58 +02:00
Peter Cai
9ec5d6e3b0
Push notifications support via UnifiedPush (#2303)
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.
2022-05-17 19:32:09 +02:00
Conny Duck
20f3ec921f Release 91 2022-05-17 19:24:17 +02:00
mcclure
4159826f26
Allow build on systems without git (#2514)
Set git revision to "unknown" if git not available.
2022-05-11 17:16:51 +02:00
Conny Duck
7db504775c Release 90 2022-05-10 20:00:53 +02:00
Constantin A
f15b3e61bb
New emoji picker (#2395)
* Update to Emoji2

* Hopefully fix the emoji picker preference

* Switch to released Filemojicompat version

* Filemojicompat version as an own var

* Remove an unused import

* Small cleanup

* Correct onDisplayPreferenceDialog; test TuskyApplication

* Use TextViews instead of EmojiTextViews

* Recreate the Main Activity if the emoji pack is updated

* Enable coreLibraryDesugaring (for Java Streams); update Filemojicompat, downgrade Emoji2

* Update emoji font versions to 14

* Use FilemojiCompat 3.2.0-beta01

* Make ktLint happy again

* Remove coreLibraryDesugaring and a FIXME

* Use EmojiPickerPreference.get()

* Disable emoji pack import

* Update FilemojiCompat to Beta 2

* Update FilemojiCompat to Beta 3

* Update FilemojiCompat to Beta 3.2.0 final

* Update FilemojiCompat to 3.2.1
2022-04-26 18:50:58 +02:00
Konrad Pozniak
d2bfceae7b
refactor compose & announcements to coroutines (#2446)
* refactor compose & announcements to coroutines

* fix code formatting

* add javadoc to InstanceInfoRepository

* fix comments in ImageDownsizer

* remove unused Either extensions

* add explicit return type for InstanceInfoRepository.getEmojis

* make ComposeViewModel.pickMedia return Result

* cleanup code in ImageDownsizer
2022-04-21 18:46:21 +02:00
Konrad Pozniak
f2fc87a79e
upgrade Kotlin and Coroutines (#2434) 2022-04-16 09:44:37 +02:00