Commit Graph

281 Commits

Author SHA1 Message Date
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
Konrad Pozniak 2851e4d38b make avatar rounding independent of image size 2018-03-30 19:08: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
Ivan Kupalov 28e46c9cc0 Add ComposeActivity tests. Add ServiceLocator (#542) 2018-03-09 22:02:32 +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 550235d40b only alert once on multiple notifications, fix order of notifications 2018-03-01 19:05:47 +01:00
Conny Duck d5ed2f9a40 fix a crash in MediaUtils 2018-02-25 15:46:32 +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 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 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
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 fbf64fa1e9 fix NPE in MediaUtils.getMediaSize 2017-12-05 21:48:17 +01:00
Conny Duck 7abd8c8d70 fix some lint warnings 2017-12-01 22:31:34 +01:00
Konrad Pozniak 41233a837b
UI Improvements (#445)
UI Improvements
2017-11-30 20:12:09 +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
Konrad Pozniak 3204223af7
fix clear notifications crash (#458) 2017-11-15 21:18:35 +01:00
Ivan Kupalov ddc4954f8a Cancel notifications on opening notifications tab (#450) 2017-11-13 19:05:23 +01:00
Conny Duck 305d28a5c1 fix some lint warnings, remove unused code 2017-11-07 15:31:44 +01:00
Conny Duck 5fff9e2bdc increase okhttp timeouts so posting large images works 2017-11-07 13:27:35 +01:00
charlag 74d6736afc Make status placeholder abstraction cleaner 2017-11-07 12:44:19 +01:00
charlag 0dede1ba7d Make more clear representation of placeholder in notifications 2017-11-07 12:44:19 +01:00
Conny Duck 80a10c1ac1 implement "load more" placeholder 2017-11-04 21:57:30 +01:00
Conny Duck fcb8a23343 fix an issue with avatars in notifications loading on the wrong thread 2017-11-03 10:09:09 +01:00
Conny Duck 2d390f6603 change default of chrome custom tabs setting to false 2017-10-30 10:48:27 +01:00
Konrad Pozniak 5cbc7217ff Link previews for detail statuses (#424)
* implement link preview cards on detail statuses

* cleanup code
2017-10-27 13:20:17 +02:00
Ivan Kupalov df4dfa7766 Stop adding link info when composing toot (#418) 2017-10-27 13:19:12 +02:00
Ivan Kupalov 4736462911 Fix sending wrong requests for autocompletion (#414)
The problem was that Tusky kept sending requests for autocompletion
while writing toots even when the user wasn't typing a username
anymore. As it happened very often we would exceed the API request
limit and user wouldn't be able to send the toot.

This happened because Tokenizer is not used as expected. In fact,
during testing, findTokenEnd() and terminateToken() were never called.
I've tried setting a Validator but it wasn't used either. I'm not
sure what is the reason.

I am afraid it still may work incorrectly for the full nicknames
(ones with the instance name, like @name@isntance) because
the search may happen for the instance name but it's not as
critical.
2017-10-24 23:02:38 +02:00
Conny Duck 8e44348f46 create notification channels ahead of time so users can edit the settings before a notification was issued 2017-10-21 21:28:05 +02:00
Ivan Kupalov 3adef27bbb Load custom emoji in statuses (#400) 2017-10-19 15:25:04 +02:00
Conny Duck 2859a5075c completely remove firebase, mqtt and google services from build 2017-10-19 14:39:56 +02:00
Conny Duck 30312e0e55 implement notification channels, use system notification settings on android Oreo 2017-10-18 22:18:07 +02:00
Conny Duck f2f3be37b3 cleanup code, remove some unneeded files 2017-10-18 00:20:50 +02:00
Vavassor af1d92c965 Actually form thread lines properly in the thread view. Closes #57 2017-08-03 22:30:37 -04:00
Vavassor 309c89eefc Makes the main status of a thread appear as a more detailed view. 2017-08-03 00:29:31 -04:00
Vavassor 368d8e5901 Documents some utilities 2017-07-27 22:03:45 -04:00
Vavassor 5257ecbfe2 Fixes notifications not setting their visibility. 2017-07-16 19:56:26 -04:00
Vavassor b8fb2c903c Merge branch 'fix-boosts' of https://github.com/charlag/Tusky into charlag-fix-boosts 2017-07-16 19:33:57 -04:00
Ivan Kupalov b51f15ac18 Fix bug where there were no media in the boosted toot and avatar opened wrong profile. 2017-07-15 14:57:51 +03:00
Vavassor d55181ccd0 Adds ability to localize timestamps. 2017-07-14 19:45:26 -04:00
Vavassor 8559a6d75c Corrects number localization and adjusts the padding of the reblog avatars in right-to-left layout direction. 2017-07-14 18:18:29 -04:00
Vavassor 40467fd355 Merge branch 'boost-avatars' of https://github.com/charlag/Tusky into charlag-boost-avatars 2017-07-14 16:54:26 -04:00
Ivan Kupalov 240fb372ba Add small avatars to boosted toots and to notifications. 2017-07-14 08:06:32 +03:00
Ivan Kupalov c6aad085a9 Fix bug with paired list incorrectly adding to the specified position.
This bug led to incorrect refreshing of the timeline
2017-07-14 06:51:03 +03:00
Vavassor fc1a24be11 Resolves merge conflicts and makes NotificationAdapter no longer implement AdapterItemRemover 2017-07-13 21:31:31 -04:00
Vavassor 5754a3a177 Fixes bug where the order of notifications could be jumbled when removing duplicates using a HashSet. 2017-07-13 20:17:50 -04:00
Ivan Kupalov 90c1a83ba4 Preserve status states on updates. UI layer refactoring.
Some things were pulled out of adapters to fragments. New classes were introduced - StatusViewData and NotificationViewData. They not only have view state in them but also help decoupling.
Because introducing parallel model list requires a lot of synchronisation PairedList was added.
Also synchronisation between fragments and adapters is quiet tedious and error-prone and should be replaces with better solution.
Oh, I also couldn’t resist and fixed bug with buttons animation in the same commit.
2017-07-13 22:18:08 +03:00
Vavassor a1e007eb2a Adds saving media to drafts. 2017-07-11 21:49:46 -04:00
Vavassor f68f6d7473 Reverts notifications from MQTT prototype to pull notifications. 2017-07-08 20:59:48 -04:00
Vavassor 5d621cecda Changes mention and tag highlighting in the composer to use Mastodon's regex. Closes #145 Also, does some haphazard cleanup. 2017-07-01 20:32:35 -04:00
Vavassor 3955649b9c Moves loading of accounts, notifications, and statuses to use link headers. Also remedies an issue where duplicate calls for the same chunk of items in a list can occur. 2017-06-30 02:31:58 -04:00
Vavassor 514cea68cc Take it down a notch, there, buddy. 2017-06-26 17:54:00 -04:00
Vavassor ef60701627 Fixes a small issue introduced in commit 1935253c18 where pasting in the composer crashes when it doesn't contain a URL (so any other textual paste will crash). The code was intended only for "share" actions, hence why it was expecting a URL enclosed. 2017-06-23 01:22:18 -04:00
Vavassor 8b4e377d34 Fixes a bug where mentioning users of the same username links them all to the same profile. Closes #312
Also, removes the title on the search page and fixes an intermittent crash on thread pages when elements load in a paritcular order.
2017-06-20 18:41:57 -04:00
Vavassor 74aa866647 Autocomplete @ mentions in the composer. Closes #103 2017-06-18 22:10:50 -04:00
Vavassor 19f140f9c6 Fixes a subscription duplicating bug in the notification client. 2017-06-05 18:40:56 -04:00
torrentcome 2b9f19805f Merge branch 'master' into #136 2017-06-02 23:15:21 +02:00
Vavassor 94639eeb69 Fixes long content warnings in posts wasting space. Closes #173 2017-06-02 03:12:02 -04:00
Vavassor 20410024f4 Fixes a mistake made while merging #294. 2017-05-30 19:35:04 -04:00
Konrad Pozniak 7501fcaeaa Merge branch 'master' into log-improvement 2017-05-25 19:17:20 +02:00
Conny Duck 2eaff99b29 log some more exceptions 2017-05-25 17:21:11 +02:00
Conny Duck 1a39e58d3c remove unnecessary Log utility class, replace Exception.printStackTrace with logging 2017-05-23 21:34:31 +02:00
Vavassor 6ee6157b7f Adds TLS to the push notification client (keystore_tusky_api is omitted). 2017-05-22 02:05:37 -04:00
Vavassor b396f2afc8 First notification received successfully from the wryk/tusky-api prototype! 2017-05-21 22:21:23 -04:00
Vavassor c90c909ca6 Integrates with wryk/tusky-api, but only partially working.
Registers to the web-service fine but loses connection when subscribing with the broker.
2017-05-20 02:39:29 -04:00
Vavassor e282f13fdc Setup client-side for integration with the wryk/tusky-api prototype. 2017-05-19 21:28:12 -04:00
Vavassor 73a5144741 Adds notification clearing and makes the client a little more stable. 2017-05-19 20:00:57 -04:00
Vavassor 388ecfcf2e Removes the product flavor split. 2017-05-18 18:10:46 -04:00
torrentcome 7cc06d3ad0 (bug fixing) When we share by an app : the text shared is not just an URL but a small text with the URL inside.
So we parse the text until find an url.
Take the first one and send it to the parse
2017-05-17 16:06:37 +02:00
Vavassor 6752d45d4b Initial client working for MQTT push notifications. 2017-05-16 22:19:34 -04:00
torrentcome 418fbd3b5c (share) add share functionality
- get the text shared and put it on the Clipboard
- pass by the same way that past for Download the information
2017-05-16 17:56:35 +02:00
torrentcome 6dd2aba3c6 (parser utils) class who will get header information of an given Url
- will redistribute that to the activity by listener
2017-05-16 10:42:31 +02:00
torrentcome 27db497ff2 (media utils) create media utils for start to group all function linked to the media there too 2017-05-16 10:41:14 +02:00
torrentcome 583983e58f (string utils) create string utils for start to group all function there 2017-05-16 10:40:12 +02:00
torrentcome 0a6a2e44c2 (view) create package view 2017-05-15 12:07:01 +02:00
torrentcome ed5564d4d5 (receiver) create package for receiver 2017-05-15 12:05:10 +02:00
Pangoraw 72ac4e5581 Allow broadcasting event across activities. 2017-05-11 09:11:15 +00:00
Vavassor aa2394748c Reorganizes the whole codebase. 2017-05-04 18:55:35 -04:00