Commit graph

647 commits

Author SHA1 Message Date
Levi Bard
0aeab2a983 Add tests for search functionality in SFragment (#617)
* Add tests for search functionality in SFragment

* Parameterize url matching tests

* Clean up / compartmentalize search tests

* Make SFragmentTest filesystem location match package name
2018-05-02 23:43:12 +03:00
Konrad Pozniak
5cfe6f8fa5
make search find statuses (#613) 2018-04-30 11:30:10 +02:00
Conny Duck
d90a011561 fix proxy settings 2018-04-30 10:34:38 +02:00
Levi Bard
ff7c54e739 Add tests for the custom toot character limit functionality (#599)
* Query instance for toot character limit
Fixes #393

* Move maximumTootCharacters to instance field

* Add caching for maximum toot characters, expanding on the emoji list storage

* Update formatting per review feedback

* Fix compose activity tests

* Rename mastodon api point for nicer interaction with kotlin

* Default emoji list to empty list instead of null, to appease json converters in failure cases

* Add test coverage for custom toot character limit setting

* Fix compiler warnings
2018-04-29 10:08:25 +02:00
Konrad Pozniak
89f93eab85
Fix SparkButtons (#608)
* fix the SparkButtons

* dont notify adapter after boost/fav
2018-04-28 22:59:46 +02:00
Ivan Kupalov
f3c6abdd4d Add expand/collapse button for threads (#609) 2018-04-28 16:17:01 +02:00
Ivan Kupalov
3dfe43dfb2 Open links in new tabs (#603) 2018-04-26 22:52:45 +02:00
Conny Duck
aecdbda375 fix crash when de/serializing InstanceEntity 2018-04-25 20:26:00 +02:00
Levi Bard
76eae44324 View links to statuses inside Tusky (#568)
* View links to statuses inside Tusky

* Only attempt to open links that look like mastodon statuses

* Add support for pleroma statuses

* Move "smells like mastodon" url check to click handler

* Add bottom sheet to notify users of post query status

* Improve architecture for managing search status

* Push everything into SFragment

* Add external lookup for non-locally-resolved account links

* Clean up copypasta from LinkHelper.setClickableText

* Apply PR feedback

* Migrate bottom sheet wrappers to CoordinatorLayout
2018-04-25 20:04:55 +02:00
Konrad Pozniak
20033f844a fix emoji & toot size limit caching 2018-04-23 09:26:03 +02:00
Konrad Pozniak
23f7f04aa8 improve "save draft" dialog show condition 2018-04-22 21:04:19 +02:00
Konrad Pozniak
d9e29e2cb6 fix crash in MainActivity when clicking notification 2018-04-22 20:40:52 +02:00
Konrad Pozniak
b4ba457d89
Dependency injection improvement (#596)
* inject MastodonApi into LoginActivity

* inject AccountManager into MainActivity

* inject AccountManager into SplashActivity, convert to Kotlin

* inject AccountManager into AccountActivity

* inject AccountManager into LoginActivity

* inject AccountManager into NotificationsFragment and NotificationClearBroadcastReceiver, fix MainActivity

* ooops

* use same OkHttpClient for Retrofit & Picasso

* fix ordering of okhttp interceptors

* remove dependencies on TuskyApplication

* bugfix
2018-04-22 17:20:01 +02:00
Konrad Pozniak
d17ff3eb0f fix problems with selectable text in detailed status 2018-04-22 16:34:02 +02:00
Konrad Pozniak
787cfbc82a fix Kotlin compiler warning 2018-04-22 14:11:41 +02:00
Konrad Pozniak
79f7f884d9
fix sending notifications (this time for reals) (#594) 2018-04-22 10:37:09 +02:00
Levi Bard
e2adddf7b8 Query instance for toot character limit (#571)
* Query instance for toot character limit
Fixes #393

* Move maximumTootCharacters to instance field

* Add caching for maximum toot characters, expanding on the emoji list storage

* Update formatting per review feedback

* Fix compose activity tests

* Rename mastodon api point for nicer interaction with kotlin

* Default emoji list to empty list instead of null, to appease json converters in failure cases

* Use empty list helper

* Fix database migration
2018-04-22 10:35:46 +02:00
Levi Bard
f66b2baf25 Fix unhandled exception when opening report activity (#592) 2018-04-20 17:22:40 +02:00
Conny Duck
7f5f0e8dd8 show error message when instance has no custom emojis 2018-04-17 22:39:55 +02:00
Conny Duck
145c6a8acb strip slashes from instance domain to avoid crash 2018-04-17 20:51:33 +02:00
Conny Duck
4bdcc9667e fix problem where send notification would stay on forever 2018-04-17 20:07:47 +02:00
Conny Duck
b621f8f78d fix bug where sometimes mentions where duplicated when replying 2018-04-17 19:06:28 +02:00
Conny Duck
df5e3a1621 fix crash when loading timelines 2018-04-17 18:37:01 +02:00
Conny Duck
ae02fba437 remove unneeded takePersistableUriPermission
was a mistake to add this in the first place
2018-04-14 18:17:29 +02:00
Conny Duck
28a85639ed upgrade minSdkVersion to 19 2018-04-14 13:56:48 +02:00
Konrad Pozniak
27eefbf65a
ComposeActivity improvements (#548)
* do not add media urls to status text

* add scrolling to content

* add arrow icon and animation to replying-to toggle

* remove unnecessary compose_button_colors.xml

* improve toot button

* improve bottom bar, add bottom sheet for compose options, dedicated cw button

* fix crash on Android < API 21

* move media picking from dialog to bottom sheet

* add small style tootbutton

* fix colors/button background for light theme

* add icons to media chose bottom sheet

* improve hide media button, delete unused styles

* fix crash on dev build when taking photo

* consolidate drawables

* consolidate strings and ids, add tooltips to buttons

* allow media only toots

* change error message to show max size of upload correctly

* fix button color

* add emoji

* code cleanup

* Merge branch 'master' into compose_activity_refactoring

# Conflicts:
#	app/src/main/java/com/keylesspalace/tusky/ComposeActivity.java

* fix hidden snackbar

* improve hint text color

* add SendTootService

* fix timeline refreshing

* toot saving and error handling for sendtootservice

* restructure some code

* convert EditTextTyped to Kotlin

* fixed pick media button disabled color

* force sensitive media when content warning is shown

* add db cache for emojis & fix tests

* reorder buttons to match mastodon web

* add possibility to cancel sending of toot

* correctly delete sent toots

* refresh SavedTootActivity after toot was sent

* remove unused resources

* correct params for toot saving in SendTootService

* consolidate strings

* bugfix

* remove unused resources

* fix notifications on old android for SendTootService

* fix crash
2018-04-13 22:37:21 +02:00
Conny Duck
6120072730 add disk cache for images 2018-04-06 22:04:14 +02:00
Gareth Murphy
6d6c9575c4 Add regular expression feed filtering (#557)
* Initial implementation of regex feed filtering

Mimics Mastodon web's functionality, but in a simpler form; a single
regular expression is shared across the home, local and federated feeds.

Strings are currently only provided in English and will need to be
translated.

* Fix buggy behaviour on filter regex update

* Validate regex filter input

Fixes buggy behaviour on inputting a regular expression feed filter by
testing the expression continuously as the user types, displaying an
error and disabling the 'OK' button of the dialog at any time it's not a
valid regular expression. Disables spelling suggestions in the input to
make the experience less frustrating and error prone.

Also fixes some generally buggy behaviour upon preference change,
specifically in cases where no Matcher was set prior to a new pattern
being set, which would cause the app to crash.

* Apply regex filter to spoiler text

* Get rid of empty catch block in regex filter code

* Make regex filter error string translatable
2018-04-05 22:58:44 +02:00
Conny Duck
21344866d3 fix note not displaying correctly in EditProfileActivity 2018-04-05 21:46:34 +02:00
Konrad Pozniak
3708421362 add new avatar placeholder 2018-03-30 19:46:36 +02:00
Konrad Pozniak
2851e4d38b make avatar rounding independent of image size 2018-03-30 19:08:24 +02:00
Konrad Pozniak
1af0b6fd48 fixes a bug where the ProgressBar in NotificationsFragment would not show up 2018-03-30 09:56:09 +02:00
Conny Duck
3628b8431d add possibility to un/lock accounts 2018-03-27 20:46:53 +02:00
Conny Duck
361352c2e1 upgrade avatar size for Mastodon 2.3 2018-03-27 20:13:24 +02:00
Ivan Kupalov
a5cffe0fea Add Dagger (#554)
* Add Dagger DI

* Preemptively fix tests

* Add missing licenses

* DI fixes

* ci fixes
2018-03-27 19:47:00 +02:00
Conny Duck
720f7c6a0c fix issue where scrolling wont stop after jumping to top 2018-03-17 19:46:01 +01:00
Conny Duck
98b652b7a1 fix crash in StatusBaseViewHolder 2018-03-15 22:08:12 +01:00
Levi Bard
043ac58254 improve content warning button
* Use the entire content warning text + button as the hitbox for the "Show more/less" toggle

* Move the content warning toggle button to its own line and give it a little more space

* Move content warning elements into parent layout, remove now-superfluous FlowLayout

* Use marginTop/Bottom instead of Vertical, which is only in sdk 26+

* Update minimum width for content warning toggle button
2018-03-15 19:15:12 +01:00
Ivan Kupalov
28e46c9cc0 Add ComposeActivity tests. Add ServiceLocator (#542) 2018-03-09 22:02:32 +01:00
Conny Duck
4e617dccc7 change the color of all SwipeRefreshLayouts to match the Tusky theme 2018-03-09 20:39:08 +01:00
Conny Duck
9e64bd1307 fix crash in LoginActivity 2018-03-09 19:54:24 +01:00
Conny Duck
44b79e31d4 fail silently when status card cannot be loaded for compatibility with Pleroma 2018-03-09 18:56:05 +01:00
Ivan Kupalov
e82c9dcd2a Compose close dialog + focus fix (#539) 2018-03-05 22:43:13 +01:00
Conny Duck
6e3faa8957 update dependencies, use new scheduleAsync of job library 2018-03-03 13:54:58 +01:00
Konrad Pozniak
71954a277e
convert entity classes to Kotlin data classes (#526)
* convert entity classes to Kotlin data classes

* more data classes, code style
2018-03-03 13:24:03 +01:00
Conny Duck
59d254455d prevent saving of incomplete account information to database 2018-03-02 21:25:58 +01:00
Conny Duck
fec1dbc470 fix link header handling in AccountActivityFragment
- fixes douplication of users after undoing unblocks/unmutes
- removes unnecessary loading when scrolled to end of list
2018-03-02 20:56:09 +01:00
Conny Duck
ed60cc3a78 gracefully handle null statuses in notifications 2018-03-01 21:10:10 +01:00
Conny Duck
550235d40b only alert once on multiple notifications, fix order of notifications 2018-03-01 19:05:47 +01:00
Conny Duck
254be4b21c make it possible to switch accounts when active account fails to load 2018-02-27 19:38:32 +01:00
Conny Duck
d5ed2f9a40 fix a crash in MediaUtils 2018-02-25 15:46:32 +01:00
Conny Duck
49a74f57a5 fix a crash in ComposeActivity when trying to share images while logged out 2018-02-25 15:41:45 +01:00
Conny Duck
c766a203bf fix bug in rtl layout, remove unneeded xml attributes & dimen resources 2018-02-16 22:14:25 +01:00
Conny Duck
1e7725a4a0 fix rare crash when resizing image in EditProfileActivity & prevent upscaling of image 2018-02-15 19:29:03 +01:00
Konrad Pozniak
17a122b293
Rewrite EditProfileActivity in Kotlin (#525)
* rewrite EditProfileActivity in Kotlin

* fix bug in MainActivity where profiles would duplicate

* fix code style
2018-02-12 22:04:18 +01:00
Konrad Pozniak
0b59b8d0ac
notification improvements (#522)
* correctly filter notifications on Api >= 26, other fixes and refactoring

* use correct areNotificationsEnabled method in MainActivity

* change notification led color
2018-02-12 22:03:08 +01:00
Conny Duck
1de45e7dd7 hide follow button on own profile correctly, code optimizations 2018-02-09 22:49:20 +01:00
Conny Duck
1a3907936d fix crash in ComposeActivity when account has no profile picture set 2018-02-08 19:17:08 +01:00
Conny Duck
5dbe3c927e fix timeline filtering not working after app restart 2018-02-08 19:12:02 +01:00
Conny Duck
6dd8c7a3ec fixes a crash when trying to share via Tusky while not logged in 2018-02-05 11:27:32 +01:00
Conny Duck
b5baaa89cf add database migration 2018-02-04 10:12:01 +01:00
Conny Duck
9b6ca7ff42 remove unused resources 2018-02-03 23:43:06 +01:00
Conny Duck
f08efec0b6 simplify theme handling 2018-02-03 23:26:53 +01:00
Konrad Pozniak
92ae463b38
Multi account feature (#490)
* basic implementation

* improve LoginActivity

* darken drawer background image

* add current avatar in ComposeActivity

* add account name to logout dialog

* multi account support for notifications

* multi account support for notifications

* bugfixes & cleanup

* fix bug where somethings notifications would open with the wrong user

* correctly set active account in SFragment

* small improvements
2018-02-03 22:45:14 +01:00
Conny Duck
3524a67a7f simplify list_item layout 2018-02-03 13:24:12 +01:00
Conny Duck
3c795c6eef upgrade to minSdkVersion 18, fix some lint warnings 2018-01-31 21:57:50 +01:00
Conny Duck
6305f19f0c fix bug where sometimes a mention would be underlined 2018-01-29 22:11:32 +01:00
remi6397
11105f4aac Theming improvements (#502)
* Split theme definitions into day and night

* Add support for Night Mode in code

* Add theme chooser in preferences

* Fix translations

* Adjust IDs

* Adjust preferences for custom themes

* UI tweaks for custom theme support

* Added code for custom theme support 🍅

* Fixed resource display in Kotlin 🍅

* Restored styles

* Updated strings

* Fixed getIdentifier() to fit into setTheme()

* Removed redundant resources

* Reset default theme to "Dusky"

* Fixed night mode handler to maintain compatibility

* Refactor functions to use helper methods

* Added license block

* Added preview to theme selector

* Added color identifier getter helper method

* Fixed reference in AccountMediaFragment

* Cleanup

* Fixed navbar foreground not changing color

* Fix fallback theme switch(){}

* Enable location-based daylight trigger

* Cleanup

* Modified theming strategy to reduce clutter in preferences

* Updated translations for latest version

* Removed "Default" theme flavor from settings

* Updated Polish translations 🇵🇱

* Modified TwilightManager handling code to support Android M's UiModeManager features and moved it to its own function

* Updated Polish translations 🇵🇱

* Cleanup; Fixed hardcoded string

* Added missing escape in string

* Removed permission request dialog.

As we now use native UiModeManager APIs that don't need special permission for Android 6.0 and above, we no longer need to bother user with Android M+ specific location permission request dialog.

* Increased readability of ThemeUtil class

* Refactored ThemeUtils.setAppNightMode method

* Cleanup
2018-01-20 13:39:01 +01:00
Conny Duck
8fa1320afe prevent crash in NotificationsAdapter when avatar url is not set 2018-01-15 17:06:21 +01:00
Ivan Kupalov
0426e8725a Set caption for media (#500) 2018-01-08 23:16:21 +01:00
Ivan Kupalov
6152043df3 Add basic lists support (#501) 2018-01-06 19:01:37 +01:00
Sergio López
7c83e0f87d implement support for HTTP proxy (#489)
This change allows the user to manually enter an unauthenticated proxy
configuration to be used for all API connections. This is mainly
intended for using Tusky with Tor (via Orbot or a local proxy).
2017-12-26 21:45:08 +01:00
Conny Duck
2899114f66 add new debug build so two tusky versions can be run on the same device 2017-12-08 12:15:46 +01:00
Conny Duck
2b477f4eea new icon & improved functionality for quick settings tile 2017-12-07 20:21:02 +01:00
Conny Duck
fbf64fa1e9 fix NPE in MediaUtils.getMediaSize 2017-12-05 21:48:17 +01:00
Conny Duck
e5516749ed stop cursor from jumping when upload finishes while composing toot 2017-12-05 20:56:42 +01:00
Conny Duck
91c73a0b74 fix crash in SavedTootActivity when deleting drafts rapidly 2017-12-03 21:56:47 +01:00
Conny Duck
ab4525ac38 fix ConcurrentModificationException when notification arrives 2017-12-02 14:34:47 +01:00
Konrad Pozniak
4743c85d82 fix crash on Android 4 2017-12-02 12:22:52 +01:00
Conny Duck
b2f9f87fc8 make medium the default font size on startup 2017-12-01 22:43:48 +01:00
Conny Duck
7abd8c8d70 fix some lint warnings 2017-12-01 22:31:34 +01:00
Conny Duck
7cc1ed9844 fix problem with spark buttons behaving weirdly 2017-12-01 22:13:47 +01:00
Conny Duck
bf4d0bb722 change handling of font size, introduce font size setting 2017-12-01 21:52:10 +01:00
Conny Duck
b33740d74e fix IndexOutOfBoundsException in ViewThreadFragment 2017-11-30 21:04:47 +01:00
Konrad Pozniak
41233a837b
UI Improvements (#445)
UI Improvements
2017-11-30 20:12:09 +01:00
Conny Duck
1c2a647569 improve default post privacy to work like web mastodon, add default post privacy option 2017-11-27 20:11:31 +01:00
Ivan Kupalov
2575b16dad Save reply info in draft, refactor (#449)
* Save reply info in draft, refactor

* Handle replying to deleted status
2017-11-16 19:18:11 +01:00
Conny Duck
3055e6176e upgrade libraries, fix DrawerImagerLoader deprecated warning 2017-11-15 21:50:15 +01:00
Konrad Pozniak
3204223af7
fix clear notifications crash (#458) 2017-11-15 21:18:35 +01:00
Konrad Pozniak
ed22d65c68 simplify MainActivity back press handling (#456) 2017-11-13 22:43:16 +03:00
Ivan Kupalov
ddc4954f8a Cancel notifications on opening notifications tab (#450) 2017-11-13 19:05:23 +01:00
Conny Duck
8e59d2d524 fix a crash on application start when no domain was saved in "domain" shared pref 2017-11-10 09:26:25 +01:00
Conny Duck
dec7da9655 upgrade to API Level 27, fix nullability problems with new support library 2017-11-09 14:35:52 +01:00
Conny Duck
97546e79d9 fix a bug where a thread was not shown completely 2017-11-09 10:08:52 +01:00
Conny Duck
f35ff105e9 fix crash when AccountMediaFragment was recreated 2017-11-07 23:33:17 +01:00
Conny Duck
59bcb6f0bf fix bug where account timeline showed only media toots 2017-11-07 23:06:06 +01:00
charlag
76c7a7e462 Display CWs in notifications correctly 2017-11-08 00:09:44 +03:00
charlag
92fb55cb3a Open status from notifications 2017-11-07 22:36:19 +03:00
Conny Duck
305d28a5c1 fix some lint warnings, remove unused code 2017-11-07 15:31:44 +01:00
Conny Duck
a2c361914b fix a crash in ComposeActivity where a dialog was canceled that was already removed from the window 2017-11-07 15:01:20 +01:00