Fork of Tusky to match Chinwag design and provide better visual accessibility. https://social.chinwag.org
Find a file
Nik Clayton a5f479d79c
Fix saving changes to statuses when editing (#3103)
* Fix saving changes to statuses when editing

With the previous code backing out of a status editing operation where changes
had been made  (whether it was editing an existing status, a scheduled status,
or a draft) would prompt the user to save the changes as a new draft.

See https://github.com/tuskyapp/Tusky/issues/2704 and
https://github.com/tuskyapp/Tusky/issues/2705 for more detail.

The fix:

- Create an enum to represent the four different kinds of edits that can
  happen
  - Editing a new status (i.e., composing it for the first time)
  - Editing a posted status
  - Editing a draft
  - Editing a scheduled status

- Store this in ComposeOptions, and set it appropriately everywhere
  ComposeOptions is created.

- Check the edit kind when backing out of ComposeActivity, and use this to
  show one of three different dialogs as appropriate so the user can:
  - Save as new draft or discard changes
  - Continue editing or discard changes
  - Update existing draft or discard changes

Also fix ComposeViewModel.didChange(), which erroneously reported false if the
old text started with the new text (e.g., if the old text was "hello, world"
and it was edited to "hello", didChange() would not consider that to be a
change).

Fixes https://github.com/tuskyapp/Tusky/issues/2704,
https://github.com/tuskyapp/Tusky/issues/2705

* Use orEmpty extension function
2022-12-31 13:04:49 +01:00
.github Create FUNDING.yml 2019-05-23 19:24:51 +02:00
app Fix saving changes to statuses when editing (#3103) 2022-12-31 13:04:49 +01:00
assets new app icon (#2695) 2022-09-13 19:48:09 +02:00
fastlane/metadata/android Translated using Weblate (Persian) 2022-12-28 18:05:00 +00:00
gradle Upgrade gradle to 7.6 and AGP to 7.3.1 (#2977) 2022-12-05 19:10:55 +01:00
.gitignore update gitignore 2018-03-03 13:26:08 +01:00
build.gradle Introduce Gradle version catalogs for versioning (#2745) 2022-11-04 20:10:26 +01:00
CONTRIBUTING.md Fix a mistake in CONTRIBUTING.md (#2286) 2022-01-04 19:29:23 +01:00
gradle.properties upgrade gradle to 7.0.2 (#2161) 2021-05-19 07:40:56 +02:00
gradlew update Gradle to 7.5.1 (#2640) 2022-08-07 19:13:44 +02:00
gradlew.bat update Gradle to 7.5.1 (#2640) 2022-08-07 19:13:44 +02:00
instance-build.gradle Spelling (#2771) 2022-11-09 19:32:39 +01:00
ISSUE_TEMPLATE.md Create ISSUE_TEMPLATE.md 2018-03-10 16:43:34 +01:00
LICENSE.txt License change back to GPL 3 2017-04-09 20:12:31 -04:00
README.md new app icon (#2695) 2022-09-13 19:48:09 +02:00
settings.gradle added README.md and missing files 2017-01-02 20:37:38 -05:00

Translate - with Weblate OpenCollective Build Status

Tusky

Tusky is a beautiful Android client for Mastodon. Mastodon is an ActivityPub federated social network. That means no single entity controls the whole network, rather, like e-mail, volunteers and organisations operate their own independent servers, users from which can all interact with each other seamlessly.

Get it on F-Droid Get it on Google Play

Features

  • Material Design
  • Most Mastodon APIs implemented
  • Multi-Account support
  • Dark, light and black themes with the possibility to auto-switch based on the time of day
  • Drafts - compose posts and save them for later
  • Choose between different emoji styles
  • Optimized for all screen sizes
  • Completely open-source - no non-free dependencies like Google services

Testing

The nightly build from master is available on Google Play.

Support

Check out our FAQs, your question may already be answered. If you have any bug reports, feature requests or questions please open an issue or send us a message at Tusky@mastodon.social!

For translating Tusky into your language, visit https://weblate.tusky.app/

Head of development

This app was developed by Vavassor@mastodon.social. The current maintainer is ConnyDuck@chaos.social.

Development chatroom

https://riot.im/app/#/room/#Tusky:matrix.org