* guard against the status of a notification being null in rare cases
* improve code, fix bug when payloads is not null
* remove findViewById
* add comments in NotificationsAdapter
* Improve time format of posts when using absolute time
* fix AbsoluteTimeFormatter, add tests
* fix tests
Co-authored-by: Conny Duck <k.pozniak@gmx.at>
* Migrate LinkHelper to kotlin
* Support tags field on statuses
* Use embedded tags list in status instead of text scraping to embed tag click handler.
Fixes#2283
* Make mentions and tags lists nonnullable
* Make LinkHelper.openLink a Context extension method
* Use builtin extension for uri conversion
* More cleanup in LinkHelper
* Add tests for LinkHelper.getDomain
* Unbreak tags in places that don't have a tag list (e.g. profiles)
* Fixup javadoc
* 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 e92e636a5c.
* Remove german translations
* 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
* Perform manual isolation of display names etc. instead of relying on BidiFormatter.
Fixes#1921
* Make follow request notification header formatting more like other notifications
* convert MainActivity to Kotlin
* migrate to MaterialDrawer 8
* fix drawer styles
* revert removing BezelImageView and material_drawer_header override
* fix tests
* add lost comment back to material_drawer_header.xml
* add tools:parentTag to material_drawer_header.xml
* use when instead of if in MainActivity
* fix statusbar color over the drawer
* cleanup drawer item creation
* tint secondary drawer items as well
* remove unnecessary ids
* fix header text color in the light theme
* improve header text contrast
* Add option to show link previews in timelines.
Addresses #1075
* Indent cards in non-selected statuses when viewing threads
* Indent cards in timelines
* Fix clipping of right side of preview in timelines
* Use blurhash as image preview and as sensitive media cover, close#1571
* Fix focal point for blurhashes
* Fix video indicator overlapping sensitive media indicator
* Add a preference for blurhash
* Add blurhash to report UI.
* Introduce StatusDisplayOptions
* show poll notifications in the app
* show poll notifications in the app
* allow filtering poll notifications in the poll fragment
* show poll notifications in system notifications
* 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
* 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
* 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
* upgrade to AndroidX, upgrade libraries
* move to MaterialComponents theme
* make sure the compose button looks good everywhere
* fix tollbar title/button alignment on tablet
* move to new material color theming, consolidate colors and themes
* fix build, fix imports
* set error on TextInputLayout instead of EditText
* fix imports, TootButton when
* improve snackbar style
* fix task description color
* Update Gradle plugin to work with Android Studio 3.3 Canary
Android Studio 3.1.4 Stable doesn't render layout previews in this project
for whatever reason. Switching to the latest 3.3 Canary release fixes the
issue without affecting Gradle scripts but requires the new Android Gradle
plugin to match the new Android Studio release.
This commit will be reverted once development on the feature is done.
* Update gradle build script to allow installing debug builds alongside store version
This will allow developers, testers, etc to work on Tusky will not having to worry
about overwriting, uninstalling, fiddling with a preinstalled application which would
mean having to login again every time the development cycle starts/finishes and
manually reinstalling the app.
* Add UI changes to support collapsing statuses
The button uses subtle styling to not be distracting like the CW button on the timeline
The button is toggleable, full width to match the status textbox hitbox width and also
is shorter to not be too intrusive between the status text and images, or the post below
* Update status data model to store whether the message has been collapsed
* Update status action listener to notify of collapsed state changing
Provide stubs in all implementing classes and mark as TODO the stubs that
require a proper implementation for the feature to work.
* Add implementation code to handle status collapse/expand in timeline
Code has not been added elsewhere to simplify testing.
Once the code will be considered stable it will be also included in other
status action listener implementers.
* Add preferences so that users can toggle the collapsing of long posts
This is currently limited to a simple toggle, it would be nice to implement
a more advanced UI to offer the user more control over the feature.
* Update Gradle plugin to work with latest Android Studio 3.3 Canary 8
Just like the other commit, this will be reverted once the feature is working.
I simply don't want to deal with what changes in my installation of Android
Studio 3.1.4 Stable which breaks the layout preview rendering.
* Update data models and utils for statuses to better handle collapsing
I forgot that data isn't available from the API and can't really be built
from scratch using existing data due to preferences.
A new, extra boolean should fix the issue.
* Fix search breaking due to newly introduced variables in utils classes
* Fix timeline breaking due to newly introduced variables in utils classes
* Fix item status text for collapsed toggle being shown in the wrong state
* Update timeline fragment to refresh the list when collapsed settings change
* Add support for status content collapse in timeline viewholder
* Fix view holder truncating posts using temporary debug settings at 50 chars
* Add toggle support to notification layout as well
* Add support for collapsed statuses to search results
* Add support for expandable content to notifications too
* Update codebase with some suggested changes by @charlang
* Update more code with more suggestions and move null-safety into view data
* Update even more code with even more suggested code changes
* Revert a0a41ca and 0ee004d (Android Studio 3.1 to Android Studio 3.3 updates)
* Add an input filter utility class to reuse code for trimming statuses
* Update UI of statuses to show a taller collapsible button
* Update notification fragment logging to simplify null checks
* Add smartness to SmartLengthInputFilter such as word trimming and runway
* Fix posts with show more button even if bad ratio didn't collapse
* Fix thread view showing button but not collapsing by implementing the feature
* Fix spannable losing spans when collapsed and restore length to 500 characters
* Remove debug build suffix as per request
* Fix all the merging happened in f66d689, 623cad2 and 7056ba5
* Fix notification button spanning full width rather than content width
* Add a way to access a singleton to smart filter and use clearer code
* Update view holders using smart input filters to use more singletons
* Fix code style lacking spaces before boolean checks in ifs and others
* Remove all code related to collapsibility preferences, strings included
* Update style to match content warning toggle button
* Update strings to give cleaner differentiation between CW and collapse
* Update smart filter code to use fully qualified names to avoid confusion
* set minSdkVersion to 21
* use elevation instead of additional views for shadow
* clean up code occurrences
* remove drawable compat code
* remove no longer needed resources
* remove unneeded android:clipChildren="false"
* Revert "remove no longer needed resources"
This reverts commit 67a4d6f8d8.
* remove no longer needed resources (this time the right ones)