Commit Graph

151 Commits

Author SHA1 Message Date
Nathan Mattes ab39c6ef87
Fix Profile Editing again (IOS-239, #1244) (#1259)
* Fix Profile Editing again (IOS-239, #1244)

This needs a bit of explanation, I guess, so please don't squash if possible? I didn't take into consideration, that the `ProfileViewController.viewModel` changes. And when it changes, all the combine-connections just ... disappear. This PR changes that (but probably I oversaw something again).

* Disable pull to refresh for editing mode (IOS-239)

* In case of nothing change, cancel editing (IOS-239)
2024-03-21 08:35:18 +01:00
Nathan Mattes 62cc9105a9
Fix Profile Editing (#1245)
* Fix image-editing (#1244)

Probably introduced in 76304e5 and we just missed that :)

* Removed unused property (#1244)

* Don't allow tapping on followers/followees when editing my profile

* Remove obsolete code

relationship-update on viewDidAppear is not needed anylonger as we use update user/relationship using notifications like in the good ol days

* Make relationship optional and use switch-pattern-matching for button-configuration

* Don't change relationship when relationship is updating

* [WIP] don't toggle, but just set booleans.
2024-03-18 16:27:12 +01:00
Nathan Mattes f6e630aa66 Cleanup (IOS-192) 2024-02-20 17:41:10 +01:00
Nathan Mattes d7fa94211a Fix warning 2024-02-20 16:28:23 +01:00
Nathan Mattes 52f5458364 Fix build 2024-02-19 12:05:48 +01:00
Nathan Mattes 0e46a811b7 Use constant foe UserInfo-key instead of string (IOS-192) 2024-02-19 10:18:12 +01:00
Nathan Mattes 91e3b63f1f Rework relationship-notification (IOS-192)
They get sent from the DataSourceFacade now
2024-02-16 12:16:55 +01:00
Nathan Mattes ffb5c59d12 Slighty refactor relationship-update-notification-handling (IOS-192)
Also: consider menu-changes from profile-screen
2024-02-16 10:34:28 +01:00
Nathan Mattes a1ba189822 Update profile-screen when relationship changes on user list (IOS-192) 2024-02-16 09:30:52 +01:00
Nathan Mattes 03e9ed7e80 FIx warning 2024-02-16 09:19:59 +01:00
Nathan Mattes ecc4535058 Update screen when relationship changes on another screen (IOS-192) 2024-02-16 09:19:22 +01:00
Nathan Mattes 04e3a573a0 Remove unused code (IOS-192) 2024-02-15 17:41:39 +01:00
Nathan Mattes 6f16a99759 Update accounts on profile-screen on pull to refresh (IOS-192) 2024-02-15 16:24:49 +01:00
Nathan Mattes 94fb3f6c7e Update account-screen when following/unfollowing/... (IOS-192) 2024-02-13 11:35:25 +01:00
Nathan Mattes c523f97d0c Merge branch 'develop' into ios-192-profile-about
# Conflicts:
#	MastodonSDK/Sources/MastodonUI/View/Control/ProfileRelationshipActionButton.swift
2024-02-09 12:43:56 +01:00
Nathan Mattes f72de977de Enable domain-block for User-refactoring (IOS-192) 2024-01-31 23:25:57 +01:00
Nathan Mattes 53973bb4d9 Revert "Use `guard` (IOS-192)"
This reverts commit 64dc97ab9b.
2024-01-31 22:49:56 +01:00
Nathan Mattes b2dbcc8095 Merge branch 'develop' into ios-192-profile-about
# Conflicts:
#	Mastodon/Protocol/Provider/DataSourceProvider+NotificationTableViewCellDelegate.swift
#	Mastodon/Scene/Notification/NotificationTimeline/NotificationTimelineViewController+DataSourceProvider.swift
#	MastodonSDK/Sources/MastodonCore/DataController/FeedDataController.swift
#	MastodonSDK/Sources/MastodonUI/View/Content/StatusView+Configuration.swift
2024-01-31 15:36:53 +01:00
Marcus Kida 383a75ea48
Improve status updating mechanism (#1210) 2024-01-30 23:02:13 +01:00
Nathan Mattes 484f44e17c Remove code (IOS-192) 2024-01-20 14:18:26 +01:00
Nathan Mattes 64dc97ab9b Use `guard` (IOS-192) 2024-01-11 15:30:35 +01:00
Nathan Mattes febbc6f22a Merge branch 'develop' into ios-192-profile-about
# Conflicts:
#	Mastodon.xcodeproj/project.pbxproj
#	Mastodon/Protocol/Provider/DataSourceFacade+Follow.swift
#	Mastodon/Protocol/Provider/DataSourceFacade+Profile.swift
#	Mastodon/Protocol/Provider/DataSourceFacade+Status.swift
#	Mastodon/Protocol/Provider/DataSourceProvider+NotificationTableViewCellDelegate.swift
#	Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewCellDelegate.swift
#	Mastodon/Protocol/Provider/DataSourceProvider+UITableViewDelegate.swift
#	Mastodon/Protocol/Provider/DataSourceProvider.swift
#	Mastodon/Scene/Discovery/Community/DiscoveryCommunityViewController+DataSourceProvider.swift
#	Mastodon/Scene/Discovery/Community/DiscoveryCommunityViewModel+State.swift
#	Mastodon/Scene/Discovery/Community/DiscoveryCommunityViewModel.swift
#	Mastodon/Scene/Discovery/Posts/DiscoveryPostsViewController+DataSourceProvider.swift
#	Mastodon/Scene/Discovery/Posts/DiscoveryPostsViewModel+State.swift
#	Mastodon/Scene/Discovery/Posts/DiscoveryPostsViewModel.swift
#	Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController+DataSourceProvider.swift
#	Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel+State.swift
#	Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel.swift
#	Mastodon/Scene/HomeTimeline/HomeTimelineViewController+DataSourceProvider.swift
#	Mastodon/Scene/HomeTimeline/HomeTimelineViewModel+LoadLatestState.swift
#	Mastodon/Scene/HomeTimeline/HomeTimelineViewModel.swift
#	Mastodon/Scene/Notification/NotificationTimeline/NotificationTimelineViewController+DataSourceProvider.swift
#	Mastodon/Scene/Notification/NotificationTimeline/NotificationTimelineViewController.swift
#	Mastodon/Scene/Notification/NotificationTimeline/NotificationTimelineViewModel.swift
#	Mastodon/Scene/Profile/Bookmark/BookmarkViewController+DataSourceProvider.swift
#	Mastodon/Scene/Profile/Bookmark/BookmarkViewModel+State.swift
#	Mastodon/Scene/Profile/Bookmark/BookmarkViewModel.swift
#	Mastodon/Scene/Profile/Favorite/FavoriteViewController+DataSourceProvider.swift
#	Mastodon/Scene/Profile/Favorite/FavoriteViewModel+State.swift
#	Mastodon/Scene/Profile/Favorite/FavoriteViewModel.swift
#	Mastodon/Scene/Profile/MeProfileViewModel.swift
#	Mastodon/Scene/Profile/ProfileViewController.swift
#	Mastodon/Scene/Profile/ProfileViewModel.swift
#	Mastodon/Scene/Profile/RemoteProfileViewModel.swift
#	Mastodon/Scene/Profile/Timeline/UserTimelineViewController+DataSourceProvider.swift
#	Mastodon/Scene/Profile/Timeline/UserTimelineViewModel+State.swift
#	Mastodon/Scene/Profile/Timeline/UserTimelineViewModel.swift
#	Mastodon/Scene/Report/Report/ReportViewModel.swift
#	Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel+State.swift
#	Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel.swift
#	Mastodon/Scene/Root/MainTab/MainTabBarController.swift
#	Mastodon/Scene/Search/SearchDetail/SearchResult/SearchResultViewController+DataSourceProvider.swift
#	Mastodon/Scene/Search/SearchDetail/SearchResult/SearchResultViewModel+State.swift
#	Mastodon/Scene/Search/SearchDetail/SearchResult/SearchResultViewModel.swift
#	Mastodon/Scene/Share/View/Content/NotificationView+Configuration.swift
#	Mastodon/Scene/Thread/ThreadViewModel.swift
#	MastodonSDK/Sources/MastodonCore/FetchedResultsController/FeedFetchedResultsController.swift
#	MastodonSDK/Sources/MastodonCore/FetchedResultsController/StatusFetchedResultsController.swift
#	MastodonSDK/Sources/MastodonCore/Persistence/FileManager+SearchHistory.swift
#	MastodonSDK/Sources/MastodonCore/Persistence/FileManager+Timeline.swift
#	MastodonSDK/Sources/MastodonCore/Persistence/Persistence.swift
#	MastodonSDK/Sources/MastodonCore/Service/API/APIService+HomeTimeline.swift
#	MastodonSDK/Sources/MastodonCore/Service/API/APIService+Search.swift
#	MastodonSDK/Sources/MastodonSDK/MastodonStatus.swift
#	MastodonSDK/Sources/MastodonUI/Scene/ComposeContent/ComposeContentViewModel.swift
#	MastodonSDK/Sources/MastodonUI/Scene/ComposeContent/Publisher/MastodonStatusPublisher.swift
#	MastodonSDK/Sources/MastodonUI/View/Content/StatusView+Configuration.swift
2024-01-08 22:32:57 +01:00
Marcus Kida 976f934df9
Remove Status from CoreData (#1167) 2024-01-08 11:17:40 +01:00
Nathan Mattes 96fddaef27 192-profile-about
# Conflicts:
#	Mastodon/Protocol/Provider/DataSourceFacade+Status.swift
#	Mastodon/Scene/Profile/Header/View/ProfileHeaderView+ViewModel.swift
#	Mastodon/Scene/Profile/ProfileViewController.swift
#	MastodonSDK/Sources/MastodonUI/ViewModel/RelationshipViewModel.swift
2024-01-02 12:15:15 +01:00
Nathan Mattes 66c152754d Add missing localization (IOS-5) 2024-01-02 11:42:07 +01:00
Nathan Mattes c0e08c4482 Fix warnings (IOS-192) 2023-12-31 12:59:39 +01:00
Nathan Mattes 6225c50008 Add some actions to Relationship-action-button (IOS-192)
Well, it's basically just unblock, unmute or follow/unfollow
2023-12-31 12:57:56 +01:00
Nathan Mattes 76304e59e5 Configure Profile-button based on relationship and accounts (IOS-192)
Also `me` is not optional anymore as we need it
2023-12-31 12:57:56 +01:00
Nathan Mattes f9492e07a3 Kill some forced unwrapping and hide bio when blocked/blocking (IOS-192)
First rule of optionals: Don't use forced unwrapping!
2023-12-31 12:57:56 +01:00
Nathan Mattes 2f0614d9c9 Refactor Mute/Block/HideReblogs to work with relationships (IOS-192)
Also: Connect Blocking/BlockedBy
2023-12-31 12:57:56 +01:00
Nathan Mattes 099cb724d0 Configure barbutton-items on profile-screen (IOS-192) 2023-12-31 12:57:56 +01:00
Nathan Mattes 6cc069ec5b Try to fix domain (IOS-192) 2023-12-31 12:57:56 +01:00
Nathan Mattes d3c7ba2c7c Show header-meta-information about account (IOS-192) 2023-12-31 12:56:59 +01:00
Nathan Mattes 2be8d5b8df WIP: Comment out and replace user with status (IOS-192) 2023-12-31 12:56:59 +01:00
Marcus Kida 405b175bdf
Implement alternative Author for DataSourceFacade.MenuContext (IOS-176) 2023-12-27 14:46:31 +01:00
Nathan Mattes 8b02ba29dd UI/UX improvements and fixes (IOS-5)
- Blur images and hide bio/timeline
- Show correct texts (localization is about to come)
2023-12-19 12:14:58 +01:00
Nathan Mattes 7a67b595a3 Add block-action to profile-menu (IOS-5) 2023-12-18 20:26:27 +01:00
Marcus Kida c30fb73922
Fix status deletion not updating data model (IOS-205) 2023-12-05 12:28:36 +01:00
Marcus Kida 45accb29e6
Fix CW cannot be hidden (IOS-176) 2023-11-28 10:46:24 +01:00
Nathan Mattes 77bf1ab03d Use correct domain to find users 2023-11-04 15:11:42 +01:00
Nathan Mattes 02207d1b1f Slightly refactor account-update
For whatever reason, fetchUser and accountInfo returned different results for me (something something ID), that's why I replaced accountInfo which came from #1053 with fetchUser, so the displayed profile is consistent
2023-10-24 13:38:41 +02:00
Nathan Mattes 87cb71da5d Get rid of translation-persistence 2023-10-16 13:28:12 +02:00
Marcus Kida 943f3bc778
Merge branch 'develop' into performance_experiments 2023-09-29 12:43:34 +02:00
Nathan Mattes 97e6d750ee Persist general settings (IOS-14, IOS-166) 2023-09-27 15:12:43 +02:00
Nathan Mattes fb6116d4a6 Refactor Settings-presentation and add new viewControllers (IOS-14) 2023-09-27 15:12:42 +02:00
Nathan Mattes e473084038
Simplify Theme (#1121) 2023-09-27 15:08:12 +02:00
Marcus Kida 360bfd29f1
Merge branch 'develop' into performance_experiments 2023-09-26 10:25:26 +02:00
Nathan Mattes fbde2a5833 More cleanup 2023-09-22 15:27:46 +02:00
Marcus Kida dcfe13ac36
Merge branch 'develop' into performance_experiments 2023-09-22 11:36:57 +02:00
Nathan Mattes 846fa44369 Refactor action-menu to better support sections (IOS-103) 2023-06-13 15:30:30 +02:00