Konrad Pozniak
fd7471f2ab
Polls part 1 - displaying in timelines and voting ( #1200 )
...
* add entity classes
* change data models and add database migration
* add polls to StatusViewData
* show poll results
* add methods for vote handling
* add voting interface
* enable voting in TimelineFragment
* update polls immediately
* enable custom emojis for poll options
* enable voting from search fragment
* add voting layout to detailed statuses
* fix tests
* enable voting in ViewThreadFragment
* enable voting in ConversationsFragment
* small refactor for StatusBaseViewHolder
2019-04-22 10:11:00 +02:00
Konrad Pozniak
82d547caf8
fix issue with avatar background recycling ( #1209 )
2019-04-21 22:59:58 +02:00
Konrad Pozniak
5aa3f958a8
fix downloading media on Android 5 ( #1206 )
2019-04-21 22:59:49 +02:00
Konrad Pozniak
e7afa0362b
add icon for bot indicator preference ( #1208 )
2019-04-21 22:59:33 +02:00
kyori19
60d6927af6
Implement redraft feature. ( #1190 )
...
* Implement "Delete and Edit" feature
* Some changes to ComposeActivity
Support for uploaded medias, sensitive option.
Fix typo.
Change names of some extra keys.
* Use Glide instead of Picasso
* Pass ArrayList instead of json
* Change wording for re-draft
* Fix test
2019-04-21 15:16:39 +02:00
Konrad Pozniak
ea048c9f0c
fix crash when status has more than 4 images and accessibility service is active ( #1204 )
2019-04-21 14:29:47 +02:00
Konrad Pozniak
1b9e279064
fix issue with foreground service on Oreo+ ( #1203 )
2019-04-21 14:28:51 +02:00
Konrad Pozniak
ef66deeae7
fix some lint warnings
2019-04-21 08:24:29 +02:00
Konrad Pozniak
1ae3e86378
remove unneeded CollectionUtil and Either.java ( #1201 )
2019-04-21 08:24:06 +02:00
Evgeny Petrov
8a6b439408
Added check if text in compose toot field has only whitespaces ( #1193 )
2019-04-20 12:17:54 +02:00
Konrad Pozniak
fb2d3024ab
fix bug where avatars where shown too small ( #1199 )
2019-04-19 15:23:30 +02:00
pandasoft0
76ce28980c
Migrate to Glide ( #1175 )
...
* Replace Picasso library with Glide library tuskyapp#1082
* Replace Picasso library with Glide library tuskyapp#1082
* Update load emoji with glide
* Update context used for Glide
* Removed unused import
* Replace deprecated SimpleTarget with CustomTarget
* Fix crash at the view image fragment, remove override image size
* Replace Single.create with Single.fromCallable
* View image fragment refactor
* Fix after merge
* Try to load cached image first and show progress view on failure
* Try to load cached image first and show progress view on failure
2019-04-16 21:39:12 +02:00
pandasoft0
bc3ea2357b
Cancel media uploads when closing ComposeActivity #838 ( #1189 )
...
* Cancel media uploads on remove the draft message
* Fix formatting
2019-04-12 22:10:52 +02:00
Bernd
84f561af17
confirm delete notifications ( #1186 )
...
* confirm delete notificaitons
* Use same strings as website
* Cleanup
2019-04-12 00:13:06 +02:00
Levi Bard
391cd12974
Add bot indicator overlay to avatars ( #1173 )
...
* Add bot indicator overlay to avatars
* Add bot overlay to account list in search view
* Add preference for bot avatar overlay
2019-04-09 20:13:25 +02:00
pandasoft0
63e4c1d4e0
Add CLEAR and FILTER buttons to notifications ( #1168 )
...
* Issue tuskyapp#762 add clear notifications button to the top of the Notifications adapter
* Issue tuskyapp#764 add the notifications filter
* Update notifications top bar buttons
* Replace PopupMenu with PopupWindow. Save notifications filter to the account table
* Disable hide top bar on empty content at the notification screen
* Add app bar behavior to the sw640 notification layout
* Fix issue with click on top notification tab
2019-04-09 19:13:54 +02:00
pandasoft0
01234bb94b
Add ability to scroll to top by tab click at the Account activity ( #1146 )
...
* Issue: tuskyapp#1078
Add ability to scroll to top by tab click at the Account activity
* Fix issue with scroll tabs other than current
* Update scroll on click behavior
* Update code formatting
* Remove unused code
* Move tab click listener from Fragments to Activities
2019-04-08 15:40:16 +02:00
Levi Bard
a2fa49aafb
Fix issue #1174 with span parsing ( #1183 )
2019-04-08 15:27:41 +02:00
Konrad Pozniak
21a817a8d4
change cw icon color on on/off ( #1181 )
2019-04-08 13:04:54 +02:00
Konrad Pozniak
4facdc9b68
error handling in FiltersActivity ( #1180 )
2019-04-07 16:33:08 +02:00
Konrad Pozniak
dd02af9911
fix IndexOutOfBoundException caused by ListStatusAccessibilityDelegate ( #1178 )
2019-04-07 16:32:58 +02:00
Evgeny Petrov
5163927e43
Added "Warning" icon instead of "CW" text. ( #1138 )
...
* Added «Warning» icon instead of «CW» text.
Icon source: https://ionicons.com/
* Updated icon to "sms_failed"
2019-04-01 19:19:37 +02:00
Konrad Pozniak
475bff00dc
remove CustomTabsHelper & ResourcesUtils ( #1157 )
2019-03-30 15:18:40 +01:00
Bernd
0db1a23c4f
Update Deps + Cleanup ( #1158 )
...
* Fix Typo
* Update build.gradle
* Update Deps
* Update Tests
* Fixes Tests
Without this some tests fail on my PC...
+ also:
"Put this in your gradle.properties:
android.enableUnitTestBinaryResources=true"
from http://robolectric.org/migrating/#project-configuration
* Make everything private
* Fix Warning
* Update TimelineFragment.java
* Update build.gradle
* Update gradle-wrapper.properties
* Update gradle-wrapper.properties
* Update gradle-wrapper.properties
* Fix Compile Errors
e.g.
Type inference failed. Expected type mismatch: inferred type is Preference? but Preference was expected
Type inference failed. Please try to specify type arguments explicitly.
* fix crash
* Grandle Wrapper 5.3
* Revert "Fix Compile Errors"
This reverts commit 4a774a4fe3ce82c84bd7b4d78e1a1c64af97cd0d.
* requirePreference
* oops
* Cleanup
* Update gradle-wrapper.properties
2019-03-30 15:18:16 +01:00
Ivan Kupalov
b66582654d
Fix issue with content warnings not being expanded from a11y delegate ( #1167 )
2019-03-30 09:10:34 +01:00
Konrad Pozniak
9b59a57356
Fix wrong notification avatar being displayed sometimes ( #1166 )
2019-03-30 09:10:01 +01:00
Konrad Pozniak
29455d5ccd
prevent empty hashtag in TabPreferenceActivity ( #1160 )
2019-03-28 21:10:53 +01:00
Konrad Pozniak
51a3e0ea5e
fix crash in TimelineFragment ( #1159 )
2019-03-28 21:10:38 +01:00
Levi Bard
5694a75a4c
Fix word boundary detection in filters ( #1152 )
2019-03-25 21:26:57 +01:00
Konrad Pozniak
291a923d51
fix crash when filter request returns an error ( #1150 )
2019-03-25 20:35:36 +01:00
Konrad Pozniak
2e52457b32
Hide unknown notifications ( #1151 )
...
* hide unknown notifications
* hide unknown notifications
2019-03-25 20:35:21 +01:00
pandasoft0
c3df44eaef
Update Notification Adapter to support status created timestamp refresh ( #1130 )
...
* Update Notification Adapter to support status created timestamp refresh
* Format the code
2019-03-25 13:44:31 +01:00
Konrad Pozniak
0c48dcf06c
add hashtag tabs ( #1145 )
...
* add hashtag tabs
* address review feedback
2019-03-24 08:59:55 +01:00
Bernd
e839a2c9fe
fix sharing to Tusky ( #1140 )
...
fixes duplicate title when sharing from Feedly or Google News
2019-03-23 12:50:24 +01:00
Levi Bard
205f3771d4
Add option to download all media for a toot with one tap. ( #1121 )
...
Addresses #966
2019-03-23 12:49:36 +01:00
pandasoft0
f1b9f7e9fe
Fix issue with floating media bar after permissions request ( #1134 )
2019-03-20 19:26:39 +01:00
Levi Bard
5135daad2c
Share filters with web client ( #956 )
...
* First step toward synchronized content filters
* Add simple filter management UI
* Remove old regex filter UI
* More cleanup
* Escape filter phrases when applying them via regex
* Apply code review feedback
* Fix live timeline update when filters change
2019-03-20 19:25:26 +01:00
Konrad Pozniak
463b008090
change project website url ( #1128 )
2019-03-18 15:47:02 +01:00
Konrad Pozniak
cffb33d705
fix proguard issue with NotificationTypeAdapter ( #1129 )
2019-03-17 07:57:10 +01:00
Konrad Pozniak
ff58960801
create IconicsDrawable with right color instead of tinting it later ( #1127 )
2019-03-16 15:41:41 +01:00
pandasoft0
7680b1b529
Refresh message timestamp every minute ( #1113 )
...
* Refresh message timestamp every minute
* Refresh timeline adapter every minute via differ
2019-03-16 14:38:29 +01:00
kyori19
d0f7f6f83c
Fix crash with unknown notification type ( #1123 )
...
* Fix crash with unknown notification type
* Add NotificationTypeAdapter to handle unknown type
* Remove unneeded SerializedName
2019-03-16 14:33:16 +01:00
Ivan Kupalov
520e0d6e7a
List editing ( #1104 )
...
* List editing groundwork
* Add ability to add/remove accounts from list, delete lists
* Rename list, improve lists UI
* Add error handling, extract strings
* Revert gradle.properties
* Apply feedback suggestions
* Apply feedback
* Update license header
2019-03-16 13:36:16 +01:00
Konrad Pozniak
08c1bbd253
fix crash in NotificationsFragment ( #1119 )
...
* fix crash in NotificationsFragment
* don't reload notifications
* add updateAdapter()
2019-03-13 09:32:59 +01:00
Konrad Pozniak
5f390b378b
Improve Dependency Injection ( #1120 )
...
* inject TimelineCases directly into SFragment
* inject ThemeUtils
2019-03-11 17:25:11 +01:00
Conny Duck
028db440ee
cleanup code
2019-03-08 21:10:48 +01:00
Mélanie Chauvel (ariasuni)
bac131c6d5
Add support for language switching ( #1108 )
...
* Add support for language switching
* Clean and improve code based on feedback
* Remove useless logging
2019-03-08 20:33:42 +01:00
Bernd
507ffb1b41
Add new Theme "Use System Design" + fixes to night mode ( #1069 )
...
* Add theme system
A theme which follows system design.
See: https://www.xda-developers.com/samsung-galaxy-s9-update-night-mode-schedule/
* update
to be in line with https://github.com/tuskyapp/Tusky/pull/1060/files
* Update ThemeUtils.java
* update
* Cleanup
* Update Deps
* Cleanup
* Update PreferencesActivity.kt
* Workaround to make MODE_NIGHT_FOLLOW_SYSTEM work
* Update ThemeUtils.java
* Use ThemeUtils.THEME_SYSTEM
* Update SplashActivity.kt
* Update strings.xml
* Update Deps
* Update build.gradle
* Update build.gradle
* fix tests
2019-03-07 21:33:29 +01:00
Levi Bard
006300ede6
Fix unhandled NPE when sharing an image from ViewMediaActivity ( #1111 )
2019-03-07 21:21:21 +01:00
Ivan Kupalov
47fa775f21
Refactor notifications adapter ( #985 )
...
* Fix unnecessary reloading of notifications
This removes topId as it is not needed and just plainly uses status id
if needed. During initial loading of notifications topId/bottomId are
not set so we ended up reloading everything.
* Refactor notifications adapter
Use AsyncListDiffer for updating notifications just like in timelines.
* Cleanup in NotificationsFragment
2019-03-07 19:31:18 +01:00
autumnontape
10fcee4798
Add autocompletion for custom emoji ( #1089 )
...
* Remove unnecessary //noinspection ConstantConditions
* Add autocompletion for custom emoji
* Update MentionTagTokenizer tests for emoji autocomplete support
* Move 1) emoji list retrieval notifying and 2) setting of emojiList field into setEmojiList() method of ComposeActivity
* Convert RelativeLayout in item_autocomplete_emoji.xml to LinearLayout
* Rename MentionTag* to Compose*
* Improve emoji autocomplete matching
* Make hashtag autocomplete results bold
* Use Context.getString()'s built-in formatting
* Add a divider between emoji autocomplete results that *start with* the token and those that *contain* it
2019-03-04 19:28:08 +01:00
Konrad Pozniak
d43b4fef4b
upgrade OkHttp, add Conscrypt ( #1083 )
...
* upgrade OkHttp, add Conscrypt
* fix tests
2019-03-04 19:25:51 +01:00
Ivan Kupalov
479d210e64
Timeline a11y ( #1059 )
...
* Improve timeline accessibility
* Improve a11y description and actions in timeline
* Refactor timeline accessibility handling, add more actions
* Update app/src/main/java/com/keylesspalace/tusky/adapter/StatusViewHolder.java
Co-Authored-By: charlag <charlag@tutanota.com>
* Add a11y actions for links, hashtags and mentions, enable for detailed.
* A11y delegate: Add open reblogger action, cleanup
* a11y delegate: add reblogs/boosts, improve interrupts
* a11y delegate: add reblogs/boosts, improve interrupts
* a11y delegate: add to notifications fragment
2019-03-04 19:24:27 +01:00
Konrad Pozniak
a0b3494c42
Fix crash when sharing to Tusky while not logged in ( #1096 )
2019-03-03 21:27:34 +01:00
Mélanie Chauvel (ariasuni)
b714f47a5f
Fix visibility of answer from DM column, from private to direct ( #1094 )
2019-03-03 17:44:29 +01:00
Konrad Pozniak
754897ea9b
Fix crash on Android 9 when replying from notification ( #1091 )
2019-03-01 21:06:48 +01:00
Konrad Pozniak
d5fcbea5ac
fix crash in account activity ( #1085 )
2019-02-27 20:03:38 +01:00
Konrad Pozniak
ffcc294107
fix crash in TimelineFragment ( #1086 )
2019-02-27 20:03:28 +01:00
Ivan Kupalov
15b441b180
Fix resizing image uniformly when opening an image ( #1076 )
2019-02-26 18:32:15 +01:00
Konrad Pozniak
5ee78e68ba
remove unnecessary divider styling ( #1057 )
2019-02-26 18:28:20 +01:00
Conny Duck
72d15f341d
fix crash on Android 5
2019-02-22 16:58:13 +01:00
Bernd
bbd37c6cd4
Fix Crash ( #1066 )
...
* fix possible npe
* Update ConversationViewHolder.java
* revert unneded changes
2019-02-20 18:49:03 +01:00
Konrad Pozniak
1621c1e689
fix crash in AccountListFragment ( #1065 )
...
* fix crash in AccountListFragment
* remove unnecessary subscribeOn
2019-02-20 18:42:18 +01:00
Mihai Boisteanu
d150cebcd0
Fixed sharing files doesn't return control after posting ( #1062 )
2019-02-19 20:56:13 +01:00
Konrad Pozniak
8201f2539d
fix close button behavior in ComposeActivity ( #1056 )
2019-02-17 20:50:06 +01:00
Konrad Pozniak
fd3226d244
fix crash when opening a thread in the browser ( #1053 )
...
* fix crash when opening a Thread in the browser
* avoid redundant actionableStatus.getActionableId()
2019-02-17 19:09:30 +01:00
Conny Duck
88ce1a1d79
fix boost/fav count resetting after boosting a detailed status
2019-02-16 15:53:56 +01:00
Conny Duck
83dc45be35
fix ConcurrentModificationException when sorting accounts
2019-02-16 14:49:17 +01:00
Konrad Pozniak
d371074d2a
fix statuses collapsing when faving/boosting in ViewThreadFragment ( #1047 )
2019-02-16 14:35:06 +01:00
Ondřej Hruška
fcc67c6918
Fix large image attachments not showing ( #1043 )
...
* fix for too large image attachments not fitting into GL texture
* Don't use context!!
2019-02-16 14:31:41 +01:00
Conny Duck
f4ac9b3da6
make max tabs reached message translateable
2019-02-15 21:35:14 +01:00
Konrad Pozniak
27cf5f5380
call db functions on background thread in ConversationsViewModel ( #1040 )
...
* call db functions on background thread in ConversationsViewModel
* use stable library versions
2019-02-15 20:41:10 +01:00
Konrad Pozniak
fdc66288b1
Fix crash with null lastStatus in Conversations ( #1042 )
2019-02-13 21:14:12 +01:00
Konrad Pozniak
fe1e9f4100
delete conversation cache on logout ( #1037 )
...
* delete conversation cache on logout
* use correct threading method
2019-02-13 19:21:04 +01:00
Konrad Pozniak
fc95903866
call db operation on background thread in TabPreferenceActivity ( #1036 )
2019-02-13 19:20:43 +01:00
Konrad Pozniak
6c93555ad0
remove unneeded instance id from db cache ( #1035 )
...
* remove unneeded instance id from db cache
* fix TimelineDAOTest
* fix TimelineRepositoryTest
2019-02-13 19:20:31 +01:00
Konrad Pozniak
e371fa0e24
Tab customization & direct messages tab ( #1012 )
...
* custom tabs
* custom tabs interface
* implement custom tab functionality
* add database migration
* fix bugs, improve ThemeUtils nullability handling
* implement conversationsfragment
* setup ConversationViewHolder
* implement favs
* add button functionality
* revert 10.json
* revert item_status_notification.xml
* implement more menu, replying, fix stuff, clean up
* fix tests
* fix bug with expanding statuses
* min and max number of tabs
* settings support, fix bugs
* database migration
* fix scrolling to top after refresh
* fix bugs
* fix warning in item_conversation
2019-02-12 19:22:37 +01:00
Konrad Pozniak
adf573646e
use the correct settings in SearchFragment ( #1034 )
2019-02-11 21:24:43 +01:00
Conny Duck
683b06a35d
upgrade deps, fix some lint warnings
2019-02-11 16:59:01 +01:00
Conny Duck
eeaadea905
Revert "Generalize url scheme parsing/highlighting ( #1008 )"
...
This reverts commit 85610a8311
.
2019-02-11 14:43:57 +01:00
Conny Duck
85593b519b
fix share chooser dialog design
2019-02-08 17:42:55 +01:00
Levi Bard
d5173c2268
Add support for selecting account when sharing from outside apps ( #1011 )
...
* Add direct-share support (API 23+)
* Add account selection dialog for non-direct sharing
2019-02-06 10:23:02 +01:00
lenchan139
5876fbeb29
Attach subject when composing with shared content from other apps ( #1020 )
...
* +attach subject when composing with shared content from other apps
* Update strings.xml
* Update preferences.xml
* Update strings.xml
* remove option for add subject of shared to composeActivity
* Update preferences.xml
2019-02-05 20:12:37 +01:00
Ivan Kupalov
63952813c8
Fix incorrectly incrementing IDs before sending to server. ( #1026 )
...
* Fix incorrectly incrementing IDs before sending to server.
* Add TimelineRepositoryTest, fix adding placeholder, fix String#dec()
* Add more TimelineRepository tests, fix bugs
* Add tests for adding statuses from DB.
2019-02-05 20:06:00 +01:00
Levi Bard
85610a8311
Generalize url scheme parsing/highlighting ( #1008 )
...
* Add support for highlighting dat, ssb, ipfs url schemes. #847
* Generalize scheme parsing for url highlighting. #847
* Migrate LinkHelper to kotlin
2019-02-05 19:55:28 +01:00
Ivan Kupalov
22ee1dc5df
Fix IDs ( #1016 )
...
* Allow any String IDs as long as they're sortable
* Allow any String IDs as long as they're sortable
2019-01-31 19:03:34 +01:00
Ivan Kupalov
87364edd98
Fix empty state for account media, fix tablets ( #1018 )
2019-01-31 18:31:15 +01:00
Konrad Pozniak
6b7ca5d184
fix autocomplete of usernames ( #1019 )
2019-01-30 22:10:05 +01:00
Ivan Kupalov
c0c73f5c06
Error artwork ( #1000 )
...
* Add new Elephant Friend images. Use them in ListsActivity.
* Add error images to AccountListFragment
* Add error images to Timeline & Notifications fragment. Needs rework.
* Introduce BackgroundMessageView. Use it in AccountList.
* Use correct button style for BackgroundMessageView
Co-Authored-By: charlag <charlag@tutanota.com>
* Use BackgroundMessageView
* Add BackgroundMessageView docs
* Re-color and document elephants
* Apply feedback, disable refresh when error is shown
* Fix string typo
2019-01-28 19:02:31 +01:00
Ivan Kupalov
ce80b0c663
Fix crash in media tab, fix #1005 ( #1007 )
2019-01-28 11:05:13 +01:00
Ivan Kupalov
a3ee13d767
Add hashtag autocompletion, closes #769 ( #1001 )
...
* Add hashtag autocompletion, closes #769
* Apply review feedback
2019-01-28 11:04:05 +01:00
kyori19
96162ab544
Add pinned status tab ( #994 )
...
* Add pinned status tab
* Make TabLayout scrollable.
2019-01-21 08:37:25 +01:00
Konrad Pozniak
fe535c2e0c
never use 0 account ids to prevent caching problems ( #999 )
2019-01-19 21:14:23 +01:00
Levi Bard
8014b1296d
Ensure that the right account is shown as selected after performing "Open as". #992 ( #996 )
2019-01-18 18:08:11 +01:00
Levi Bard
91fba293f2
Implement "Open status as (another account)" #958 ( #988 )
2019-01-16 20:50:09 +01:00
Levi Bard
922f165f95
Ensure that query/fragment/etc. don't get embedded into local filenames ( #989 )
...
when downloading #886
2019-01-15 20:57:13 +01:00
Conny Duck
fa0ee82fe4
fix build
2019-01-14 22:29:12 +01:00
Ivan Kupalov
3ab78a19bc
Caching toots ( #809 )
...
* Initial timeline cache implementation
* Fix build/DI errors for caching
* Rename timeline entities tables. Add migration. Add DB scheme file.
* Fix uniqueness problem, change offline strategy, improve mapping
* Try to merge in new statuses, fix bottom loading, fix saving spans.
* Fix reblogs IDs, fix inserting elements from top
* Send one more request to get latest timeline statuses
* Give Timeline placeholders string id. Rewrite Either in Kotlin
* Initial placeholder implementation for caching
* Fix crash on removing overlap statuses
* Migrate counters to long
* Remove unused counters. Add minimal TimelineDAOTest
* Fix bug with placeholder ID
* Update cache in response to events. Refactor TimelineCases
* Fix crash, reduce number of placeholders
* Fix crash, fix filtering, improve placeholder handling
* Fix migration, add 8-9 migration test
* Fix initial timeline update, remove more placeholders
* Add cleanup for old statuses
* Fix cleanup
* Delete ExampleInstrumentedTest
* Improve timeline UX regarding caching
* Fix typos
* Fix initial timeline update
* Cleanup/fix initial timeline update
* Workaround for weird behavior of first post on initial tl update.
* Change counter types back to int
* Clear timeline cache on logout
* Fix loading when timeline is completely empty
* Fix androidx migration issues
* Fix tests
* Apply caching feedback
* Save account emojis to cache
* Fix warnings and bugs
2019-01-14 22:05:08 +01:00
kyori19
75158a3aa0
Fix typo ( #987 )
...
* Optimize imports
* Fix typo in 'replyingStatusAuthor'
2019-01-14 21:57:22 +01:00
Ivan Kupalov
fb83d086d1
Fix unnecessary reloading of notifications ( #984 )
...
This removes topId as it is not needed and just plainly uses status id
if needed. During initial loading of notifications topId/bottomId are
not set so we ended up reloading everything.
2019-01-11 22:07:40 +01:00