Commit graph

1299 commits

Author SHA1 Message Date
Konrad Pozniak
1586817c3d
Update gradle, kotlin and other dependencies (#2291)
* update gradle, kotlin and other dependencies

* fix new warnings

* remove unused import

* update Proguard rules

* add explicit dependency on Gson to get the newest version

* remove debug flag from proguard rules again

* fix typo
2022-01-20 21:10:32 +01:00
Konrad Pozniak
a000228165
correctly detect end of pagination in network timeline (#2296)
* correctly detect end of pagination in network timeline

closes #2293

* improve NetworkTimelineRemoteMediatorTest

* remove unused import
2022-01-20 18:30:21 +01:00
Konrad Pozniak
f29e46ad55
fix media hidden default in ViewThreadFragment (#2295) 2022-01-17 18:45:11 +01:00
Konrad Pozniak
fe350ccf36
move AccountActivity and related classes to a new package (#2216)
* move AccountActivity and related classes to a new package

* fix ktlint

* fix ktlint

* fix imports
2022-01-11 19:55:17 +01:00
Konrad Pozniak
643e012b11
Timeline paging (#2238)
* first setup

* network timeline paging / improvements

* rename classes / move to correct package

* remove unused class TimelineAdapter

* some code cleanup

* remove TimelineRepository, put mapper functions in TimelineTypeMappers.kt

* add db migration

* cleanup unused code

* bugfix

* make default timeline settings work again

* fix pinning statuses from timeline

* fix network timeline

* respect account settings in NetworkTimelineRemoteMediator

* respect account settings in NetworkTimelineRemoteMediator

* update license headers

* show error view when an error occurs

* cleanup some todos

* fix db migration

* fix changing mediaPreviewEnabled setting

* fix "load more" button appearing on top of timeline

* fix filtering and other bugs

* cleanup cache after 14 days

* fix TimelineDAOTest

* fix code formatting

* add NetworkTimeline unit tests

* add CachedTimeline unit tests

* fix code formatting

* move TimelineDaoTest to unit tests

* implement removeAllByInstance for CachedTimelineViewModel

* fix code formatting

* fix bug in TimelineDao.deleteAllFromInstance

* improve loading more statuses in NetworkTimelineViewModel

* improve loading more statuses in NetworkTimelineViewModel

* fix bug where empty state was shown too soon

* reload top of cached timeline on app start

* improve CachedTimelineRemoteMediator and Tests

* improve cached timeline tests

* fix some more todos

* implement TimelineFragment.removeItem

* fix ListStatusAccessibilityDelegate

* fix crash in NetworkTimelineViewModel.loadMore

* fix default state of collapsible statuses

* fix default state of collapsible statuses -tests

* fix showing/hiding media in the timeline

* get rid of some not-null assertion operators in TimelineTypeMappers

* fix tests

* error handling in CachedTimelineViewModel.loadMore

* keep local status state when refreshing cached statuses

* keep local status state when refreshing network timeline statuses

* show placeholder loading state in cached timeline

* better comments, some code cleanup

* add TimelineViewModelTest, improve code, fix bug

* fix ktlint

* fix voting in boosted polls

* code improvement
2022-01-11 19:00:29 +01:00
Mélanie Chauvel
c0c8eec36b
filter messages by also looking at media descriptions (#2285) 2022-01-04 19:28:49 +01:00
Konrad Pozniak
0ae3a2ed2a
fix confirmFavourites default (#2282) 2021-12-29 13:44:00 +01:00
Konrad Pozniak
6b7d3ef613
fix loading Gif avatars into the main appbar (#2268)
* fix loading Gif avatars into the main appbar

and respect the animateAvatars setting

closes #2259

* fix formatting
2021-12-05 19:12:52 +01:00
Konrad Pozniak
b62ccd918f
fix compose button on profile page being half hidden (#2267) 2021-11-16 21:38:59 +01:00
Konrad Pozniak
d1d564a7e2
support animated PNGs and WEBPs (#2244) 2021-10-09 10:45:41 +02:00
Colin Kinloch
c37ccbb6e8
Add confirmation for favourite and bookmark actions (#2245)
* Add confirmation for favourite and bookmark actions

* Favourite confirmation american spelling and default values

* Remove bookmarking confirmation

* Update app/src/main/java/com/keylesspalace/tusky/fragment/NotificationsFragment.java

Co-authored-by: Konrad Pozniak <connyduck@users.noreply.github.com>

Co-authored-by: Konrad Pozniak <connyduck@users.noreply.github.com>
2021-10-04 07:48:44 +02:00
Levi Bard
651b35267f
Fix toolbar for instance list activity. (#2248)
Fixes #2247
2021-09-28 19:55:30 +02:00
Levi Bard
d07c1b098e
Highlight your own votes when displaying poll results (#2242)
* Highlight your own votes when displaying poll results

* Unbreak tests

* Add a checkmark to the description of self-voted options
2021-09-17 22:12:17 +02:00
Levi Bard
45598cf047
Audio caption improvements (#2220)
* Fix caption display in audio player

* Make video/audio description scrollable

* Constrain the maximum size of media label previews
2021-09-17 21:55:54 +02:00
Levi Bard
d93a9b5753
Fix crash when updating profile and the source field exists, but some of _its_ fields don't (#2243) 2021-09-17 21:51:00 +02:00
Levi Bard
59b977c57c
Fix filtering timelines (#2214) 2021-06-30 20:11:14 +02:00
Konrad Pozniak
2cc53d6772 fix codestyle 2021-06-28 22:04:34 +02:00
Konrad Pozniak
9ca7e708bd
fix liking/boosting/bookmarking/voting boosted statuses in timeline (#2212) 2021-06-28 21:41:18 +02:00
Konrad Pozniak
16ffcca748
add ktlint plugin to project and apply default code style (#2209)
* add ktlint plugin to project and apply default code style

* some manual adjustments, fix wildcard imports

* update CONTRIBUTING.md

* fix formatting
2021-06-28 21:13:24 +02:00
Konrad Pozniak
955267199e
migrate scheduled toots to paging 3 (#2208) 2021-06-24 21:24:04 +02:00
Konrad Pozniak
f6dd131b95
migrate drafts to paging 3 (#2206)
* migrate drafts to paging 3

* migrate DraftHelper to coroutines
2021-06-24 21:23:29 +02:00
Konrad Pozniak
554820de5f
migrate reporting to paging 3 (#2205)
* migrate reporting to paging 3

* apply PR feedback
2021-06-20 10:58:19 +02:00
Konrad Pozniak
920c71560b
throw HttpException instead of generic exception in TimelineViewModel (#2202) 2021-06-20 10:19:03 +02:00
Ivan Kupalov
837ee2e40d
Convert some adapters to Kotlin (#2187)
* Rename .java adapters to .kt

* Convert Account adapters to Kotlin

* Apply feedback for adapter refactoring
2021-06-20 10:18:40 +02:00
Konrad Pozniak
6d4f5ad027
migrate to paging 3 (#2182)
* migrate conversations and search to paging 3

* delete SearchRepository

* remove unneeded executor from search

* fix bugs in conversations

* update license headers

* fix conversations refreshing

* fix search refresh indicators

* show fullscreen loading while conversations are empty

* search bugfixes

* error handling

* error handling

* remove mastodon bug workaround

* update ConversationsFragment

* fix conversations more menu and deleting conversations

* delete unused class

* catch exceptions in ConversationsViewModel

* fix bug where items are not diffed correctly / cleanup code

* fix search progressbar display conditions
2021-06-17 18:54:56 +02:00
Konrad Pozniak
31da851f28
correctly serialize custom spans to html (#2199) 2021-06-14 11:00:35 +02:00
Konrad Pozniak
f04a2a1ee4
fix reblog avatar (#2197) 2021-06-14 10:22:08 +02:00
Konrad Pozniak
86002efc97
fix "show notifications filter" preference opening tabs preferences (#2193) 2021-06-11 20:50:52 +02:00
Ivan Kupalov
44a5b42cac
Timeline refactor (#2175)
* Move Timeline files into their own package

* Introduce TimelineViewModel, add coroutines

* Simplify StatusViewData

* Handle timeilne fetch errors

* Rework filters, fix ViewThreadFragment

* Fix NotificationsFragment

* Simplify Notifications and Thread, handle pin

* Redo loading in TimelineViewModel

* Improve error handling in TimelineViewModel

* Rewrite actions in TimelineViewModel

* Apply feedback after timeline factoring review

* Handle initial failure in timeline correctly
2021-06-11 20:15:40 +02:00
Konrad Pozniak
3301643c1d
update to SDK 30 and fix deprecations (#2173)
* update to SDk 30 and fix deprecations

* remove unnecessary .run

* revert ViewMediaActivity change
2021-06-01 19:46:07 +02:00
Konrad Pozniak
e032d38d56
fix LiveData nullability issues (#2181) 2021-05-31 15:16:07 +02:00
Ivan Kupalov
59c62204c7
Fix crash in NotificationsAdapter when spoiler is null. (#2178) 2021-05-27 16:41:54 +02:00
Konrad Pozniak
d5e539fd64
cleanup MainActivity / last remnants of SavedToots (#2174) 2021-05-22 19:24:40 +02:00
Konrad Pozniak
ca5c455881
update AndroidX, use ActivityResultContracts (#2170)
* update AndroidX, use ActivityResultContracts

* make allowMultiple setable in PickMediaFiles

* add license headers to PickMediaFiles
2021-05-22 17:50:08 +02:00
Konrad Pozniak
81057213db
don't upscale images in caption dialog (#2165)
* don't upscale images in caption dialog

* don't upscale images in caption dialog
2021-05-21 17:52:03 +02:00
Konrad Pozniak
387e62ea4b
get rid of jcenter (#2163)
* get rid of jcenter

* fix BottomSheetActivityTest

* update Android Image Cropper license
2021-05-21 17:51:47 +02:00
Konrad Pozniak
751109ac39
upgrade kotlin to 1.5.0 (#2162)
* upgrade kotlin to 1.5.0

* don't explicitly set kotlin jvmtarget
2021-05-21 17:51:35 +02:00
Konrad Pozniak
40b24cd242
migrate to RxJava3 (#2146)
* migrate to RxJava3

* remove unused import
2021-05-16 19:53:27 +02:00
Konrad Pozniak
6c37cc770c
remove SavedToots (#2141)
* remove SavedToots

* fix tests
2021-05-16 19:17:56 +02:00
Konrad Pozniak
b156be6ded
work around mastodon mute bug (#2150) 2021-05-09 18:37:41 +02:00
Konrad Pozniak
076a2b248a
fix crash when captioning large images (#2149) 2021-05-06 07:33:15 +02:00
Konrad Pozniak
bd670a01c3
fix event handling in TimelineFragment (#2143) 2021-05-02 17:17:30 +02:00
Konrad Pozniak
bcc852c521
update Room to 2.3.0 (#2138)
and use the new ProvidedTypeConverter
2021-04-24 18:31:16 +02:00
Konrad Pozniak
bf6d7a6b97
Convert TimelineFragment to Kotlin & ViewBinding (#2131)
* convert TimelineFragment to Kotlin

* cleanup some code

* migrate to viewbinding

* cleanup even more code

* address review feedback

* improve findStatusOrReblogPositionById
2021-04-22 18:48:16 +02:00
Konrad Pozniak
dee6a3a160
always show follow requests in main menu (#1809)
* always show follow requests in main menu

* update recyclerview to v1.2.0

* fix bug that shows follow requests info to wrong users
2021-04-10 20:30:44 +02:00
Zero King
41847bc009
Add missing breaks in switch statements (#2127) 2021-04-06 17:18:52 +02:00
Konrad Pozniak
f293670c14
migrating to ViewBinding part 6: the final cleanup (#2117) 2021-03-21 12:42:28 +01:00
Konrad Pozniak
bea5098cc1
migrating to ViewBinding part 4: Fragments (#2108)
* migrating to ViewBinding part 4: Fragment

* fix imports

* don't use viewBinding extension in ViewImage and ViewVideoFragment

* don't use viewBinding extension in ViewImage and ViewVideoFragment
2021-03-13 21:27:20 +01:00
Konrad Pozniak
0b86f58139
convert some regular strings to plural strings (#2100)
* convert some regular strings to plural strings

* convert hint_describe_for_visually_impaired from string to plurals

* fix ukrainian strings
2021-03-07 19:43:25 +01:00
Konrad Pozniak
2d0862cfc5
fix MainActivity switching to notification tab when opened from recents (#2099) 2021-03-07 19:29:45 +01:00
Konrad Pozniak
fc4b47aee4
migrating to ViewBinding part 4: Adapters (#2095) 2021-03-07 19:24:01 +01:00
Konrad Pozniak
22bed19d90
migrating to ViewBinding part 3: EmojiPreference (#2094) 2021-03-07 19:06:05 +01:00
Konrad Pozniak
ff69a2ad0d
migrating to ViewBinding part 2: Activities (#2093) 2021-03-07 19:05:51 +01:00
Konrad Pozniak
5167b8578e
migrating to ViewBinding part 1: Dialogs + Views (#2091) 2021-03-07 19:04:22 +01:00
kyori19
cf642d9eb0
Avoid using displayName for displaying purpose (#2101) 2021-03-05 16:26:51 +01:00
Konrad Pozniak
574480524a
fix custom emojis in names when liking/boosting a boosted toot (#2092) 2021-03-01 21:44:02 +01:00
Konrad Pozniak
13392258f6
upgrade Material Design lib and use their new time picker (#2077) 2021-02-23 20:29:02 +01:00
Konrad Pozniak
6ebbe5f657
fix crash when rotating screen in a preference dialog twice (#2083) 2021-02-23 18:53:43 +01:00
Konrad Pozniak
d2a8254d4f
add content description to account subscription button (#2076) 2021-02-18 19:26:25 +01:00
Konrad Pozniak
e3b79097d4
remove redundant options from account toolbar (#2075) 2021-02-18 19:26:14 +01:00
Konrad Pozniak
ff7d900b67
fix profile note "Saved" message appearing on other account changes (#2079) 2021-02-18 19:26:03 +01:00
David
2fea6011fd
NavIcon Avatar fix (#2080)
* NavIcon Avatar fix

* Added in all three methods
2021-02-16 18:45:45 +01:00
Konrad Pozniak
be77d91e91
change draft attachment directory (#2070) 2021-02-09 19:45:43 +01:00
Ivan Kupalov
c178804efe
Fix TalkBack not initializing old views in recycler (#2036) 2021-02-09 18:41:40 +01:00
Konrad Pozniak
4d856365f9
cleanup drafts when user logs out (#2067)
* cleanup drafts when user logs out

* delete unused method

* remove unneeded sorting from loadDraftsSingle
2021-02-07 16:40:09 +01:00
Alibek Omarov
9580870445
Animated emoji support (#2064)
* Animated emoji support

* Try to query preference only once

* Revert to using SpannableStringBuilder
2021-02-06 08:14:51 +01:00
Alibek Omarov
c685192d49
Don't stop autocompletion after second @ (#2062)
* ComposeTokenizer: do not search stop after second @

* ComposeTokenizer: try to fix test

* ComposeTokenizer: try to fix test 2

* ComposeTokenizer: try to fix test 3

* ComposeTokenizer: fix autocomplete for accounts with 1 character nickname

* ComposeTokenizer: better document tokenizer

* ComposeTokenizer: add tests

* ComposeTokenizer: remove unused logging
2021-02-04 19:16:58 +01:00
Konrad Pozniak
483beaa957
move onOptionsItemSelected to BaseActivity (#2059)
* move onOptionsItemSelected to BaseActivity

* revert change in ComposeActivity
2021-01-31 20:27:02 +01:00
Konrad Pozniak
dc5f0c87a2
remove let's encrypt root cert again (#2056)
* remove let's encrypt root cert again

* fix user-agent example
2021-01-31 19:35:39 +01:00
Konrad Pozniak
886ff2f06b
get rid of BaseFragment by using RxJava instead of Retrofit Calls (#2055)
* get rid of BaseFragment by using RxJava instead of Retrofit Calls

* fix tests
2021-01-31 19:34:33 +01:00
Alibek Omarov
455942505c
ComposeViewModel: remove unused variable (#2060) 2021-01-31 18:58:45 +01:00
Alibek Omarov
b00aa9b461
SpanUtils: highlight nicknames with dashes (#2061)
While it's not allowed to create such accounts on Mastodon, it federates fine with servers that allow dashes.
2021-01-31 18:57:48 +01:00
lenchan139
0275504a05
Move compose content's EditText cursor to first when shared content parsed in ComposeActivity (#2030)
* multiple media upload support

* multiple media upload support

* multiple media upload support

* remove  typing

* Update app/src/main/res/values/strings.xml

Co-authored-by: Konrad Pozniak <connyduck@users.noreply.github.com>

* remove magic number on string.xml and add to activity.

* move edittext cursor to first when shareBody parsed in ComposeActivity

Co-authored-by: Konrad Pozniak <connyduck@users.noreply.github.com>
2021-01-26 16:38:03 +01:00
Konrad Pozniak
46468b8a78
use CustomTabColorSchemeParams instead of deprecated methods (#2049) 2021-01-25 16:23:32 +01:00
Konrad Pozniak
940d6d395a
Drafts v2 (#2032)
* cleanup warnings, reorganize some code

* move ComposeAutoCompleteAdapter to compose package

* composeOptions doesn't need to be a class member

* add DraftsActivity and DraftsViewModel

* drafts

* remove unnecessary Unit in ComposeViewModel

* add schema/25.json

* fix db migration

* drafts

* cleanup code

* fix compose activity rotation bug

* fix media descriptions getting lost when restoring a draft

* improve deleting drafts

* fix ComposeActivityTest

* improve draft layout for almost empty drafts

* reformat code

* show toast when opening reply to deleted toot

* improve item_draft layout
2021-01-21 18:57:09 +01:00
Levi Bard
baa915a0a3
Support opening unknown attachment types via openLink (#2044)
* Support opening unknown attachment types via openLink. #1970

* Fix label text for unknown attachment types
2021-01-18 13:53:13 +01:00
Levi Bard
cb2296f248
Prompt before deleting lists (#2043)
* Prompt before deleting lists. #1998

* Address pull request feedback
2021-01-18 11:40:13 +01:00
Levi Bard
5fbd459aed
Make tapping the main toolbar scroll to the top of the timeline. #1899 (#2045) 2021-01-15 21:23:02 +01:00
Garrit Franke
4c7d09b1e3
Show display names for reposts (#2041)
* WIP: Show display names for reposts

* Display emojis on reposts

* Move unicode wrapping

Co-authored-by: Garrit Franke <garrit@slashdev.space>
2021-01-15 21:16:32 +01:00
Levi Bard
be60155de5
Implement timed mutes. (#2035)
Fixes #2033
2021-01-15 21:05:36 +01:00
lenchan139
f7a630c1d8
multiple media upload support (#2029)
* multiple media upload support

* multiple media upload support

* multiple media upload support

* remove  typing

* Update app/src/main/res/values/strings.xml

Co-authored-by: Konrad Pozniak <connyduck@users.noreply.github.com>

* remove magic number on string.xml and add to activity.

Co-authored-by: Konrad Pozniak <connyduck@users.noreply.github.com>
2020-12-30 17:36:00 +01:00
Konrad Pozniak
8b9ddca7bd
cleanup code in ConversationsFragment, SearchFragment and Report*Fragments (#2027) 2020-12-27 21:25:35 +01:00
Garrit Franke
0fbb4e9713
Wellbeing mode (#1992)
* Add wellbeing mode settings toggle

* Translate wellbeing mode string to german

* Disable fav/boost count on toots if wellbeing is enabled

* Hide follow/post stats on profiles

* Reload notifications when wellbeing mode is toggled

* Add wellbeing mode explainer dialog

* Move wellbeing filter timeline into own category

* Add toggles for quantitative stats

* Hide announcement badge counts if wellbeing is enabled

* Move fetching of wellbeing setting to activity

* Add wellbeing option to statusDisplayOptions

* Update post filters for all accounts

* Remove local translations

* Revert "Remove local translations"

This reverts commit e92e636a5c759b09649174ab68ec91bc13680287.

* Remove german translations
2020-12-23 19:13:37 +01:00
Alibek Omarov
b91a0aceeb
Notification bell (#2012)
* Add notification bell button, API endpoints and new relationship field

* Add notification type for subscriptions

* Add subscriptions to legacy notification filtering

* Update schemas

* Fix build

* Make rewrite static method into method of Notification class, fix getNotificationText

* Mastodon wording for subscriptions
2020-12-23 12:52:39 +01:00
Konrad Pozniak
a19411c947
cleanup accountManager.activeAccount usages in MainActivity (#2021) 2020-12-13 16:32:04 +01:00
Konrad Pozniak
5db3bb3779
Workaround for old Androids not connecting to new Let's Encrypt hosts (#2014)
* Rename .java to .kt

* convert OkHttpUtils to Kotlin

* trust new letsencrypt root cert

* cleanup OkHttpUtils

* add link to lets encrypt cert to OkHttpUtils
2020-12-13 16:31:12 +01:00
Konrad Pozniak
9cdf486ceb
remove ThemeUtils.getTintedDrawable (#2015) 2020-12-09 19:08:16 +01:00
Konrad Pozniak
b1a1a69988
fix the notification buttons on the Muted users page (#2009) 2020-12-04 18:55:13 +01:00
Levi Bard
b8268538fd
Fix negative count on the unread announcements badge. (#2010)
Fixes #1994
2020-12-04 17:37:52 +01:00
Levi Bard
3c93804751
Fix links in announcements. (#2011)
Fixes #2008
2020-12-04 17:35:51 +01:00
Konrad Pozniak
a9337bcb78
fix workmanager crashing because of async initialization (#2003) 2020-12-01 07:39:30 +01:00
Konrad Pozniak
9793035a3d
fix crash when opening some audio attachments (#2002) 2020-12-01 07:39:15 +01:00
Konrad Pozniak
3558d441a4
better distinction between green and blue build flavors (#1997) 2020-11-28 17:34:21 +01:00
Konrad Pozniak
227e219241
load drawer avatar earlier to avoid flicker on app start (#1993)
* load drawer avatar earlier to avoid flicker on app start

* use placeholder when loading drawer avatar for the first time
2020-11-25 19:41:57 +01:00
Ivan Kupalov
ef1ae581b4
Fix some of the StrictMode violations (#1931)
Mostly it's disk reads/writes.

Conscrypt reads own version on startup which reads from disk multiple
times. There's no solution for it right now.

SharedPreferences which are used in BaseActivity also read from disk
and pretty early but it shouldn't be a problem.
2020-11-23 20:05:48 +01:00
Konrad Pozniak
9ea2557148
fix crash when clearing glide requests (#1989) 2020-11-22 19:03:11 +01:00
Konrad Pozniak
34fb546200
upgrade dependencies (#1990)
* upgrade dependencies

* fix tests
2020-11-22 19:02:54 +01:00
Konrad Pozniak
f917a5aa4b
apply the home filter to lists (#1991) 2020-11-22 19:02:38 +01:00
kyori19
fef4b8b07f
[needs help] Support announcements (#1977)
* Implement announcements activity

* Update reactions without api access

* Add badge style

* Use emptyList() as default parameter

* Simplify newIntent

* Use List instead of Array

* Remove unneeded ConstraintLayout

* Add lineSpacingMultiplier

* Fix wording

* Apply material design's default chip style

* Dismiss announcements automatically
2020-11-18 21:12:27 +01:00
Konrad Pozniak
ce973ea7e7
Personal account notes (#1978)
* add personal notes to AccountActivity

* use RxJava instead of plain okhttp calls

* make AccountViewModel rx aware

* hide note input until data is loaded
2020-11-17 20:10:54 +01:00