Commit graph

245 commits

Author SHA1 Message Date
Thomas Ricouard
6297a428a3
Full Xcode 16 supports + iOS 18 support (#2100)
* Compile on iOS 18

* Fix more warnings

* Tweak build settings

* Migrate to Swift Tests

* better tests

* Fix

* Fix tests

* More TabView cleanup

Bump to iOS 18 only + remove custom sidebar

* Revert "More TabView cleanup"

This reverts commit e051437fcb.

* Tabbar fix + bump to iOS 18

* Remove popToRoot

* Cleanup scrollToTop

* Support both TapBar

* Better TabView support

* Better TabView support

* Cleanup

* Disable TabView animations

* Remove id in ForEach

* Remove external init for StatusRowView

* Cleanup

* More Swift 6 concurrency

* Swift 6 mode

* Fixes

* Full Swift 6 packages support

* For now compile env in Swift 5 mode

* Fix archive

* More fix to Archive

* Address `dispatch_assert_queue_fail` (#2161)

See https://twitter.com/dimillian/status/1823089444397724003?s=61&t=SC3rvyJQWn1NQqAgMVrT0Q

* Bump Env to Swift 6

* Fix push notification

* Remove unecessary workaround

* Cleanup

* Move to @Entry

* Fix TabView on Catalyst

* Fix build

* Fix build 2

* fix warning

* Fix icons for iOS 18

---------

Co-authored-by: NachoSoto <NachoSoto@users.noreply.github.com>
2024-09-10 06:53:19 +02:00
Thomas Ricouard
e0eed97bcf Direct subscribe to sub.club 2024-08-21 18:22:38 +02:00
Thomas Ricouard
83bf872cca Add timer for sub.club account 2024-08-15 21:25:04 +02:00
Thomas Ricouard
1ad4a245f3
Add support for sub.club support (#2162)
* Account tipping

* Tryout full flow

* Add link params

* WIP

* Progress flow

* Fixes

* More progress

* Refresh user profile on notification

* Tweaks

* Fix follow button not refreshing

* Refactor proxy url

* Code cleanup

* Subscribe to a premium account from a standard linked account

* Premium posts tab on linked standard account

* Fix flow

* New domain

* Fix flow

* More fixes to follow flow

* Update so to sub.club

* Add colorScheme in URL

* rollback domain

* Back to sub.club

* Use SubClub API for Subscription info

* Fix

* Merge

* Merge branch 'iOS-18' + fixes
2024-08-14 20:07:43 +02:00
Thomas Ricouard
a72f290038 Lint 2024-08-01 08:58:54 +02:00
Thomas Ricouard
9fa19aa132 Add media grid on user profile 2024-07-31 18:44:29 +02:00
Thomas Ricouard
123f05538a Paginate search results fix #2143 2024-07-31 11:19:43 +02:00
Thomas Ricouard
54768772b5 Remove external init for StatusRowView 2024-07-18 21:37:18 +02:00
Christopher Schindler
fdb213e4bf
AccountDetail: fix wrong space on top of the header view (#2113) 2024-07-03 08:12:29 +02:00
Christopher Schindler
f2ba08e1cc
Add an option to delete the avatar or header (#2109)
* Endpoint: add Profile endpoint

* EditAccount: add an option to delete the avatar or header

* EditAccount: always display avatar view
2024-06-25 10:59:19 +02:00
Christopher Schindler
aaeb9eaa36
Fix the upload of heavy avatar or header image (#2103)
* Compressor: allows custom parameters for compressing image (maxSize, maxHeight, maxWidth)

* Account: configures the maximum image size for uploading avatar and header
2024-06-24 08:58:06 +02:00
Christopher Schindler
02a8cb12e9
AccountDetailView: fix white spacing on top of the view (#2110) 2024-06-24 08:56:17 +02:00
Thomas Ricouard
69cb9a20f9 Add native translate for media description edit + profile bio 2024-05-14 19:36:25 +02:00
Paul Schuetz
48faddebea
Implement Apple Translate (#2065)
* Implement a first version of Apple's Translation

The user can now choose between his instance's server, DeepL (with API
key) and Apple's Translation framework. A translation is cleared if
the translation type is changed. The strings aren't yet written, but
the translations settings view's inconsistent background is now fixed.

* Transfer the old "always_use_deepl" setting

The "always_use_deepl"-setting is now deleted, but its content is
transferred to the equivalent value in "preferred_translation_type".

* Show the user if the DeepL-API key is still stored

The user is now shown a prompt if they've switched away from
.useDeepl, but there's still an API key stored. The API key is not
deleted if the user doesn't instruct the app to do so, so this change
makes it more transparent, since a user might not expect the key to
be stored and might not want this to be the case.

* Localize Labels

The labels for the buttons and options are now localized. "DeepL API Key" is written consistently (with uppercase Key)

* Run all the strings through localization

The strings "DeepL" and "Apple Translate" are now also saved in
localizable.strings and addressed through keys. They were taken
directly previously, which was inconsistent.

* Fix storage

The selected value for preferredTranslationType wasn't stored, the
synchronization between UserPreferences and Storage is now in place.

* Hide Apple Translate if not yet on iOS 17.4

The Apple Translate option is hidden if the user hasn't updated their
phone to at least iOS 17.4. If the Apple Translate option is selected
but the user has downgraded to before iOS 17.4, the standard instance
option is selected.

* Consistently show Apple Translate

Apple Translate was previously only shown if the standard translate
button was visible, that is now fixed. It's now attached to the
StatusRowView, which is always present.

* Animate the removal of translations

The reset of a translation when the translation type is changed is now
animated, which is important for iPad users if they've translated a
post in the sidebar.

* Add support for the Mac Catalyst build

The Mac Catalyst Version doesn't allow the import of the api, so
compiler flags now check if the import isn't allowed and then remove
all references to Apple Translate.

* Swift Format

* Revert "Run all the strings through localization"

This reverts commit 86c5099662.

# Conflicts:
#	Packages/Env/Sources/Env/TranslationType.swift

* Remove the DeepL fallback

The DeepL fallback for the instance translation service is removed,
error messages are shown if a translation fails.

* Allow for the use of an User API Key as fallback

The DeepL fallback is reinstated if the user has put in their own API
Key

* Make the localization keys clear strings

* Make Apple and the instance a fallback

Apple Translate is now a fallback for both other translation types,
the instance service is a fallback for DeepL.
2024-05-13 13:27:21 +02:00
Thomas Ricouard
a6f3068728 Add accounts list placeholder 2024-05-08 10:59:31 +02:00
Thomas Ricouard
c3edabb183 Lint 2024-05-04 13:19:19 +02:00
Thomas Ricouard
abcd4cc321 Add muted and blocked accounts list 2024-05-02 08:43:58 +02:00
Thomas Ricouard
058500f91e Swiftformat . 2024-03-11 09:05:52 +01:00
Thomas Ricouard
9a7e6b7cb0 Various fixes for Xcode 15.3 2024-03-11 08:59:29 +01:00
Max von Webel
bc2a09891a
Added a "Moved To" Button to accounts that moved to other instances (#2001)
* added moved information to Account model

* Added "Moved To" button to account details for accounts that have moved
2024-03-11 08:57:35 +01:00
Thomas Ricouard
b56da94a7c Add more sheets to shared + link to filters in timeline top filters 2024-02-21 09:45:29 +01:00
Thomas Ricouard
24ce872849 Add previews + refactor placeholder view 2024-02-14 13:34:06 +01:00
Thomas Ricouard
1f858414d8 format . 2024-02-14 12:48:14 +01:00
Thomas Ricouard
77aa50ef19 Fix #1873 2024-02-11 18:52:58 +01:00
Thomas Ricouard
219703ecc7 Refactor to NextPageView + handle next page loading failure 2024-02-11 10:58:51 +01:00
Thomas Ricouard
3020d831e4 Various fixes 2024-02-06 19:19:53 +01:00
Thomas Ricouard
b4dbda8722 Migrate EmojiText API 2024-02-05 08:55:24 +01:00
Thomas Ricouard
f67163e4b0 Cleanup print + use OSLog 2024-02-02 18:26:24 +01:00
Thomas Ricouard
016e4d5d57 Refactor CancelToolbarItem 2024-01-23 08:13:45 +01:00
Ghulam Mustafa
328ee2d090
Fix #1885 blank options on profile page on macos (#1906) 2024-01-19 17:48:20 +01:00
Thomas Ricouard
709dd79e25 Fix for visionOS + Remove shimmer 2024-01-19 08:51:29 +01:00
Thomas Durand
788fab930b
Using AsyncButton from button kit to improve following and related buttons (#1888) 2024-01-14 10:51:54 +01:00
Thomas Ricouard
6d12f2528d Fix #1873 2024-01-13 08:39:51 +01:00
Thomas Ricouard
0da8228e61 Followed Tags + Lists tab. + sidebar customization 2024-01-10 13:26:55 +01:00
Thomas Ricouard
b7e8f63e86 Multi window visionOS support 2024-01-09 13:28:57 +01:00
Thomas Ricouard
e7864f7089 Add following search fix #1846 2024-01-09 13:28:51 +01:00
Thomas Ricouard
5d24c4d2e8 Fix #1836 2024-01-08 18:22:44 +01:00
Thomas Ricouard
7eb382c052 Status -> StatusKit 2024-01-06 19:27:26 +01:00
Thomas Ricouard
d65510493a Namespace StatusEditor 2024-01-06 18:43:26 +01:00
Thomas Ricouard
8c8c551686 Fix warnings + better recently used tags 2024-01-06 11:21:07 +01:00
Thomas Ricouard
3d29c9e600 Fix account swap for favorites and bookmarks 2024-01-04 16:53:10 +01:00
Thomas Ricouard
3229bf0cb5 Timeline: Add indicator when loading new posts 2024-01-04 12:56:46 +01:00
Thomas Ricouard
ad4995ad70 Catalyst: Fix mention window 2024-01-03 13:40:53 +01:00
Thomas Ricouard
6cc14f8249 Better UX for avatar / header selection 2024-01-02 21:50:11 +01:00
Thomas Ricouard
1eb33466ca Edit profile: Update avatar & header 2024-01-02 21:16:27 +01:00
Thomas Ricouard
0c13cbd61f Filters: Add current editing keyword on save 2024-01-01 21:29:38 +01:00
Thomas Ricouard
f0061b36ca Account: Show nav bar title for main, followers, following 2024-01-01 17:29:15 +01:00
Thomas Ricouard
7b484fc8e1 Add loading indicator on profile 2023-12-28 22:18:13 +01:00
Thomas Ricouard
b0ba6c15da Add favorites / bookmarks tab on macOS / iPadOS 2023-12-28 09:37:02 +01:00
Thomas Ricouard
5a2478c791
VisionOS native support (#1758)
* Initial support

* UI Adjustments

* WIP icons

* More UI
2023-12-19 09:51:20 +01:00