* Add EmojiCompat
* EmojiCompat doesn' replace all emojis anymore
* This app should be now capable of loading a EmojiCompat-font located in a file somewhere inside the device's storage
* Should now replace all emojis
* Add EmojiCompat support to EditTextTyped
* Provide EmojiCompat fonts
* The app won't crash anymore when no emoji font is available.
Emoji font should now be located at [Private external app directory]/files/EmojiCompat.ttf
* Removed BundledEmojiCompat dependency
Since this EmojiCompat-implementation does not rely on BundledEmojiCompat, there's no reason to have it enabled.
* Update EditTextTyped.kt
Since connection isn't assigned to (I tried doing so), it can be declared final/val again.
* Update README.md
* Add some non-working emoji preferences
* Add a short font list for testing
* Finished implementation
* Add Twemoji to font list
* Update documentation, more comments
* Delete AssetEmojiCompat which is obsolete now
* Update the font list
* Update the font list
* Fix font list & add Exception handling for malformed JSON files (hopefully)
* More fixes. It should work now...
* Removed AssetEmojiCompat (again)
* Add most of the changes
* Improved the EmojiCompat dialog's style
* The font list is now based on a static layout without external files
* Re-add the real font URL for Twemoji
* Emoji-font captions are now translatable
* Removed one unused String (loading)
* Removed emoji fonts from this repo
* Applied changes from the PR change requests
* The correct emoji font will be selected after cancelling a change
* Add details on the EmojiCompat fonts available (not shown yet)
* Add licensing information on Twemoji and Blobmoji
* Reworked some strings
* Moved FileEmojiCompat to its own library
* Update FileEmojiCompat to the latest version (1.0.3)
* EmojiCompat bug should be fixed
* Better handling of failed downloads
* Removed one TODO
Signed-off-by: Constantin A <10349490+C1710@users.noreply.github.com>
* Update emoji attribution strings
Signed-off-by: Constantin A <10349490+C1710@users.noreply.github.com>
* Fixed some misspelled strings
Signed-off-by: Constantin A <10349490+C1710@users.noreply.github.com>
* 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
* German translation: der Toot becomes der Beitrag
* German translation: Toot! becomes Teilen!
* German translation: berichtet becomes gemeldet
* German translation: NSFW-Inhalte become Heikle Inhalte
* German translation: Followers become Folgende
* German translation: Followanfrage becomes Folgeanfrage
* 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
* 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
* The plural of Status is Status (pronounced differently, tho), not Statuse, see https://de.wiktionary.org/wiki/Status - Not just for that reason, I suggest to remove the word *Status* completely and use *Toot* or *Toots* instead
* "Dieser Benutzer war nie *x*" translates to "This user was never *x*". The new translations are similar to the English ones, but I'd prefer something like "Couldn't follow that user".
* "%s ist dir gefolgt" -> "%s was following you"
* With the visibility I took more freedom and translated them "Public visible", "Public visible, but not in the public timeline" and "Only visible to followers and mentioned"