Commit graph

222 commits

Author SHA1 Message Date
Thomas Ricouard a4910037b8 Swiftformat . 2023-02-22 19:09:39 +01:00
Chanhwi Joo 40386d6312
Make boost swipe buttons consistent with ones from inline & context menu (#999)
* Show different label and icon for boosting my followers-only post

* Disable boost swipe actions on posts that can't be boosted

* Remove unnecessary function calls
2023-02-22 12:49:36 +01:00
Thomas Ricouard c4daa73932 More accurate notifications badge 2023-02-22 12:14:57 +01:00
Louis Lac bf49a4558c
Singularize enum type names (#978) 2023-02-21 18:52:30 +01:00
Thomas Ricouard b259b6739e Swiftformat 2023-02-21 07:23:42 +01:00
Gareth Simpson 53f364b232
Font picker consistency (#960)
* Put SF Rounded into the popup menu with Hyperlegible & Dislexia

* Remove SF Rounded Toggle
2023-02-21 07:08:32 +01:00
Thomas Ricouard e7fffa07d4 Fix theme not being applied live on status row close #961 2023-02-20 13:00:50 +01:00
Thomas Ricouard ccc504fc6f Share post as image close #885 2023-02-19 15:29:07 +01:00
Thomas Ricouard bfce92d71e Per account notifications count close #894 2023-02-18 15:36:18 +01:00
Thomas Ricouard ca4e80101f Swiftformat 2023-02-18 07:26:48 +01:00
Thomas Ricouard f09781582f Various optimizations to views & images rendering 2023-02-17 18:17:51 +01:00
Peter-Josef Meisch 0b5ad32a92
add 12 hour duration to poll duration menu (#892) 2023-02-16 13:22:48 +01:00
Thomas Ricouard ab0b207596 Request store rating when publishing a post 2023-02-16 12:14:57 +01:00
Thomas Ricouard 40ca3940f6 Reworked account management / selection UI 2023-02-16 07:19:20 +01:00
Thomas Ricouard 6c6d25fc63 Add a setting to use SF Rounded font close #890 2023-02-15 20:03:31 +01:00
Peter-Josef Meisch fc21a3721a
Add setting to disable display of alt texts for media (#854) 2023-02-14 22:13:48 +01:00
Thomas Ricouard dbbd33ba88 Reworked social notifications 2023-02-14 12:17:27 +01:00
Thomas Ricouard df98e0f987 Revert "Use semver library for version checks (#843)"
This reverts commit 380a6acfd1.
2023-02-14 07:03:49 +01:00
Chanhwi Joo af61ff7914
Improve swipe actions (#825)
* Remove icons from settings

* Add new toggle for using the theme tint

* Localizations

* Add icon style picker

* Localizations

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-02-14 07:01:55 +01:00
Joe Barbere 380a6acfd1
Use semver library for version checks (#843)
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-02-14 07:00:32 +01:00
Keita Watanabe f0c2cfc08c
fix build error for env package (#844) 2023-02-14 06:59:44 +01:00
Thomas Ricouard 3d96d6997d Better handling of notifications 2023-02-13 22:30:06 +01:00
Thomas Ricouard 90199fc88b Route to push notifications on selection 2023-02-13 21:50:44 +01:00
Thomas Ricouard 50f6f1b007 Report status 2023-02-13 21:12:18 +01:00
Thomas Ricouard 86aad4145a Notifications: When multiple follow, open list of users instead of just one user 2023-02-13 07:00:42 +01:00
Thomas Ricouard eb6050a38f Swiftformat 2023-02-12 16:29:41 +01:00
Chanhwi Joo 0b3319c2e1
Improve swipe actions and settings (#808)
* Remove an unnecessary space from string

settings.swipeactions.status.trailing

* Make SwipeActionsSettingsView to be consistent with others

* Divide none as another section

* Add icons

* Make hollow icons work

* Show different button label by its status

* Use different colors by actions

* Fix swapped icons in settings

* Refactor
2023-02-12 10:37:09 +01:00
Thomas Ricouard e6c5f2a9ca Fix instance version check 2023-02-12 09:58:21 +01:00
Thomas Ricouard 503dc3b3ee Fix UserPreferences making timeline laggy 2023-02-11 22:48:07 +01:00
Peter-Josef Meisch 124aeef7fb
swipe actions improvements (#785)
* swipe actions improvements

* use old values as default settings

* Polish swipe actions settings

* Fix background color

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-02-11 21:48:08 +01:00
Joe Barbere fcf20b1675
Allow editing of alt-text for media (#796)
* Allow editing of alt-text for media

* Fix

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-02-11 21:38:33 +01:00
Thomas Ricouard feefb02456 Status detail: Switch to List container + refactor to something much better 2023-02-10 18:21:05 +01:00
David Davies-Payne 11167c35c3
Also sort tags and lists in profile view (#764)
* Add CurrentAccount.sortedLists and .sortedTags

Sorts alphabetically, ascending, lowercased on title and name respectively.

* TimelineTab uses CurrentAccount.sortedLists and .sortedTags

* Account detail sorts tags and lists

Alphabetically, ascending, lowercased via CurrentAccount.sortedTags, .sortedLists
2023-02-10 06:38:18 +01:00
Yusuke Arakawa 11c5da05c2
Remove tab string from iOS app (#669)
* Remove tab string from iOS app

* Added tab string display setting

* Fixes

---------

Co-authored-by: Yusuke Arakawa <nekolaboratory@users.noreply.github.com>
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-02-09 06:28:16 +01:00
Thomas Ricouard c5e43394c8 Add a setting to disable secondary column on iPad / macOS 2023-02-06 18:53:37 +01:00
Sean Goldin 90ec3d419c
Clean up HapticManager (#678)
* Check for haptic capabilities

* Make manager do most of work

* ABC enum

* Fix spelling 😊

* Small tweak
2023-02-06 17:53:27 +01:00
Jérôme Danthinne 2f5e170983
Follow requests improvements (#679)
* fix: when accepting/rejecting followers, only disable the current request button

* fix: fetch followers request when updating notifications
2023-02-06 17:52:36 +01:00
Thomas Ricouard 65ed2d871c Add settings for haptic feedbacks 2023-02-04 17:38:48 +01:00
Thomas Ricouard 6b285cdbcf Cleanup 2023-02-04 17:17:38 +01:00
Thomas Ricouard 4de46610e0 Handle dynamic streaming URL 2023-02-03 19:44:55 +01:00
Peter-Josef Meisch e79b39f952
Add option to start in-app browser in reader view. (#619)
* Add option to start in-app browser in reader view

localizations

* Disable toggle instead of hiding it
2023-02-03 07:04:00 +01:00
Thomas Ricouard bb6910cd83 Centralize haptic feedbacks 2023-02-02 16:56:42 +01:00
Gareth Simpson fdb402a065
Boost deduplicating (#524)
* Trying something with caching boosts

* Use an actual cache for caching

* Persist cache to documents folder

* Stray debugging variable

* Unpublish seen variable in the ViewModel

* Settings for deduplicating boosts.

* Changes from review / merge conflicts
2023-02-01 18:56:06 +01:00
Thomas Ricouard 24504e3bc2 Various optimizations to speed things up 2023-01-30 19:14:43 +01:00
Thomas Ricouard 16636b12a9 Swift format 2023-01-30 07:27:06 +01:00
Paul 392b1bd01a
Add the ability to set a custom font (#519)
* Add the ability to set a custom font

* Small fixes

* Indent

* Add missing localization

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-01-30 07:25:55 +01:00
Thomas Ricouard e0d6340a9d Adapt medias view to secondary column 2023-01-29 17:37:15 +01:00
Thomas Ricouard e84a57ed7f Display loading when fetching remote user on status row 2023-01-29 11:17:43 +01:00
Thomas Ricouard 62c3f6e04a Add a new settings to disable video auto playing 2023-01-29 10:19:59 +01:00
Greg Gardner 59ef1b2909
Retain original ordering of media URLs (#503)
Co-authored-by: Greg <greg@cromulentlabs.com>
2023-01-29 07:35:59 +01:00
prajeet 525321cfa4
Stopped calling authenticated endpoints if authtoken is does not exist for currentClient. (#463) 2023-01-28 09:01:12 +01:00
Greg Gardner b1b9e658c9
Work-around issue with QLPreviewController not supporting swipe-to-dismiss and pinch-to-dismiss when presented from SwiftUI by creating a transparent UIViewController wrapper around QLPreviewController that presents it using UIKit instead. (#452) close #106
Co-authored-by: Greg <greg@cromulentlabs.com>
2023-01-28 06:45:15 +01:00
Thomas Ricouard b89221a535 Code cleanup / format / lint 2023-01-27 20:36:40 +01:00
Thomas Durand 8cac9df8c6
Action extension that would open a deep link in the app (#423)
* Early version of an action that would open a deeplink in the app

* Extend routeur support + catch deeplinks

* Cleaning extension code, using what local packages has to offer

* Removed useless stuff from the extension

* Added action icon ; Thanks Dall-E for the icon

* Added the action name within a localizable file

* Fix routeur

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-01-27 20:35:16 +01:00
Thomas Ricouard 418e9545ba Completely clear duplicated push notifications issue 2023-01-27 16:51:29 +01:00
Thomas Ricouard de4346c47e Add push notification settings in profile context menu 2023-01-27 12:18:17 +01:00
Thomas Ricouard 0f4fccf1a5 Disable keychain group on simulator 2023-01-27 12:06:44 +01:00
Thomas Ricouard d1ed8e962b Push notifications: Per account settings 2023-01-26 13:21:35 +01:00
Thomas Ricouard 43ac56302e Move settings tab and profile tab around 2023-01-26 07:34:29 +01:00
Thomas Ricouard 5cd9ddd945 New account settings + create / edit server side filters 2023-01-25 21:18:34 +01:00
Jérôme Danthinne 9b3b3692ee
Support for follow requests (#376) close #321
* Support for follow requests (#321)

* Run SwiftFormat

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-01-25 13:02:28 +01:00
Gareth Simpson ab4ac1b004
Local content settings close #338 (#362)
* Local settings for sensitive content.

* Local sensitive content settings

* Added the posting settings as well as the reading ones.

* Menu item / nav title mismatch

* Fixes

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-01-25 06:28:16 +01:00
Gareth Simpson 6e58bb8e3e
Better fix for #317 & #339 (#365) 2023-01-25 06:14:55 +01:00
Thomas Ricouard 5fa4c7e4f4 Fix App Group 2023-01-24 23:03:25 +01:00
Thomas Ricouard 1aadb0ce3a Add a setting for disabling social keyboard close #355 2023-01-24 21:44:33 +01:00
Pascal Batty a1218e1488
Prepend language list with recently used languages (#353)
* Add new preference entry for recently used languages

Exposes a function to keep the language array clean: no more than 3 items, starting with the most recently used iso code

* Add the preferences to the status editor ViewModel

* Add language selector handling of most recent languages

Only when the user has explicitly selected a language, when the posting was successful, add the selected language to the preferences array.

- Makes Language a local private struct for clarity
- Ensures all available languages are only fetched once
- Separates recently used, other and search result section contents using specific vars/funcs

* Copy new key in all localization files

Co-authored-by: Pascal Batty <pascal@zen.ly>
2023-01-24 21:34:16 +01:00
Thomas Ricouard d05afd93c4 Push notifications: display account name if multi account fix #344 2023-01-24 13:38:26 +01:00
Thomas Ricouard b1520c549e Various fixes due to recent merges 2023-01-24 07:19:09 +01:00
Gareth Simpson d0854d0107
This is a fix for #317 (#318)
* This is a fix for #317
Well more of an improvement than a fix.
Instead of looking for tags anywhere, we now look for /tags/TagName exactly.  This can still fail if it happens to be a link to somewhere not on the post creator's home server that follows that pattern but by the time the parsing is done the post creator isn't available without a lot of re-plumbing.
But anyway, this should be better.

* No force unwrap
2023-01-24 06:37:15 +01:00
Steve Kalkwarf a7c7dfd24e
Make spelling of "favorite" consistent (#327)
"Favorite" was spelled using both UK English and US English variations:
113 favourite
64 favorite

I made them consistent, using the US spelling.
2023-01-24 06:35:43 +01:00
Thomas Ricouard 8fe6eddead Settings: Add a button to hide OpenAI button in the composer 2023-01-23 20:45:18 +01:00
Steve Kalkwarf fb6b2b39fa
Adjusted file names to match content (#286) 2023-01-22 19:59:22 +01:00
Thomas Ricouard d6aa99eb57 New direct messages view close #122 2023-01-22 16:55:03 +01:00
Thomas Ricouard 921d28a57a Add setting to hide translate button close #252 2023-01-22 09:15:01 +01:00
Thomas Ricouard a79c5691e0 Run SwiftFormat 2023-01-22 06:38:30 +01:00
Thomas Ricouard e05734fe1a Added edit history 2023-01-19 21:19:19 +01:00
Thomas 980b9a5dd6
Implement Localization (#80)
* Implement localization

* Fix some localization keys

* Adapt to recent changes
2023-01-19 18:14:08 +01:00
Thomas Ricouard c7a832e110 Added a font scale slider on macOS 2023-01-17 21:08:05 +01:00
Romain Vincens bb72327f52
Fixed typos & misspells (#88)
* Fixed typos and misspells

* Other typos
2023-01-17 15:14:50 +01:00
Thomas Ricouard 7f6419ebae Swiftformat 2023-01-17 11:36:01 +01:00
Thomas Ricouard dd6483dd37 Fix EnvironmentObject related crash on macOS + iPad 2023-01-17 07:39:13 +01:00
Thomas Ricouard b0ac1b4f57 Share latestCurrentAccountKey preference key for share extension 2023-01-15 18:18:54 +01:00
Thomas Ricouard 596f920603 Share sheet extension 2023-01-15 16:39:08 +01:00
Sean Goldin ba64015f18
Polls (#70)
* Add poll options

* Add the poll view

* Disable adding attachments when showing polls

* Update to post poll info

* Wire up poll view

* Remove debug code

* Use VM for showing poll

* Rename PollView to something better!

* Move file location

* Disable poll button if media is attached.

* Don't refocus on delete option to avoid index out of range crash

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-01-13 07:30:15 +01:00
David Walter d646fef9f4
Fix Link Handling (#69) 2023-01-12 18:25:37 +01:00
Thomas Ricouard 66efedbbda AppAccounts: Move to its own package to prepare widget work 2023-01-12 18:17:21 +01:00
Thomas Ricouard 9cf863d8c3 Post editor: Drafts support 2023-01-11 12:44:34 +01:00
Thomas Ricouard dc223171b3 Support hide sensitive medias / hide all medias 2023-01-09 20:39:42 +01:00
Thomas Ricouard 33634a16aa Fetch server side preferences 2023-01-09 19:47:54 +01:00
Thomas Ricouard d59ba03ba3 Handle badge for push notifications 2023-01-09 18:52:53 +01:00
David Walter 76d7d23379
Support In-App Safari (#44)
* Support In-App Safari

* Fix "View in Browser"

* Force external Safari on Account Creation

* Fix SafariRouteur issues

Attach to NavigationStack
Find top-most ViewController

* Make Preferred Browser a Picker choice
2023-01-08 19:56:16 +01:00
Thomas Ricouard a9db49e5df Support audio attachement + better push keys flow 2023-01-08 16:18:38 +01:00
Thomas Ricouard ed8208857a Cleanup + Polish push notifications 2023-01-08 14:16:43 +01:00
Thomas Ricouard 874ea309ac Fix keys 2023-01-08 11:22:44 +01:00
Thomas Ricouard 57b0b6982c Fix keychain group 2023-01-08 10:57:58 +01:00
Thomas Ricouard 424cd475ad Add push notifications support 2023-01-08 10:22:52 +01:00
Thomas Ricouard 7f5330f284 Redesigned settings tab 2023-01-06 17:14:34 +01:00
Thomas Ricouard f922ba344d Search & Pin remote local timeline + general polish 2023-01-06 12:14:05 +01:00
Thomas Ricouard e1ad5efd80 Direct message + empty screen for notifications and messages 2023-01-05 12:21:54 +01:00
Thomas Ricouard dcdd8402e9 Timeline: Add filter for followed tags 2023-01-04 18:37:58 +01:00
Thomas Ricouard e0253fb439 Added lists support + bunch of bug fixes 2023-01-02 19:23:44 +01:00
Thomas Ricouard 975a403c49 Handle account link in account bio and notifications 2023-01-01 11:40:18 +01:00
Thomas Ricouard 28ef54fa4b Improve logged out experience 2023-01-01 09:19:00 +01:00
Thomas Ricouard bb47937eb6 Editor: Refactor + Add autocomplete for mentions and hashtag 2022-12-31 09:10:27 +01:00
Thomas Ricouard f215298917 Embed + tap on statuses link from any instances 2022-12-30 16:55:13 +01:00
Thomas Ricouard d393c4b90f Fix notifications tab + prepare multi account 2022-12-29 06:55:53 +01:00
Thomas Ricouard 5b9f91abd1 Editor character count + settings instance rules 2022-12-28 08:06:46 +01:00
Thomas Ricouard 0ac109c49b Better quote post 2022-12-27 13:38:10 +01:00
Thomas Ricouard 9209258f4c Routeur: Handle same instance status url 2022-12-27 08:31:47 +01:00
Thomas Ricouard e5fb3acd07 Quote status + embed status 2022-12-27 07:51:44 +01:00
Thomas Ricouard bda77571b6 Editor: Simple edit 2022-12-26 08:24:55 +01:00
Thomas Ricouard fded30bb76 Refactor live timeline + handle more events 2022-12-26 07:36:54 +01:00
Thomas Ricouard a8fb18559d Live notifications 2022-12-25 13:09:43 +01:00
Thomas Ricouard 93543cad6b Post / Delete a status and watch main timeline 2022-12-25 12:46:42 +01:00
Thomas Ricouard 8df70043cb Very basic status post 2022-12-25 08:17:16 +01:00
Thomas Ricouard 70ee6e0d27 Post boosted by / favourited by 2022-12-24 13:41:25 +01:00
Thomas Ricouard e4e2b2ab8b Following / Followers page 1 2022-12-23 18:47:19 +01:00
Thomas Ricouard 6e8ed998d4 Explore: Added suggested accounts to follow 2022-12-23 15:28:22 +01:00
Thomas Ricouard 189037b53d Explore + Account polish + Status editor WIP 2022-12-23 10:41:55 +01:00
Thomas Ricouard 084dd18362 Refactor current account handling 2022-12-22 11:19:56 +01:00
Thomas Ricouard 66e314c2be Retire SheetDestinations for now 2022-12-22 10:56:24 +01:00
Thomas Ricouard 1a85fa19f8 Quick look support for media preview 2022-12-22 10:53:36 +01:00