2
2
mirror of https://github.com/mastodon/mastodon-ios synced 2025-04-11 22:58:02 +02:00

55 Commits

Author SHA1 Message Date
Marcus Kida
8504284bc9
Fix Load More Gap eventually shown due to false positive (IOS-275) 2024-06-12 16:33:21 +02:00
Nathan Mattes
575b0c08ee Minor refactoring (IOS-272)
Use an extension instead of its own class
2024-05-24 21:02:03 +02:00
Marcus Kida
677670055e
Fix "Load More" Button on Home/Public Timeline (#1283)
* Begin fixing of "Load More" on Home Timeline (IOS-266)

* Don't show "Load More" if last status is first existing (IOS-266)

* Insert missing items upon "Load More" (IOS-266)

* Implement sinceID usage when loading latest posts (IOS-266)

* Change updating of items on Load More(IOS-266)

* Do not try to modify datasource directly (IOS-266)

* Improve load more (IOS-266)

* Fix load more using maxID and limit to 20 items (IOS-266)

* Implement loading missing status in public timeline (IOS-266)

* Implement subsequent "Load More" (IOS-266)

* Make loadMore(item:at:) API more Swifty (IOS-266)

* Address PR comments (IOS-266)
2024-05-08 10:02:21 +02:00
Nathan Mattes
906b13c03d
Scrolling crash content offset (IOS-254) (#1281)
* Remove unused code (IOS-254)

* Don't hide pill immediately every single time (IOS-254)

* Check if there's something to scroll to (IOS-254)

As the cause for the crash seems to be clear (scrolling to an indexPath that doesn't exist -> crash) we could check for the indexPath to exist.

* Remove unused code

* Only cache my timeline (IOS-254)
2024-05-02 16:47:37 +02:00
Nathan Mattes
8884b326fc Re-enable offlineness-hint (IOS-234) 2024-04-09 16:12:32 +02:00
Nathan Mattes
6c0faede75 Show " Post Sent!"-pill if post was sent successfully (IOS-234)
Maybe we could think about an error-message here, too?
2024-04-08 10:40:16 +02:00
Nathan Mattes
527d250024 Show "New Post 💊" if new posts (IOS-234) 2024-04-07 13:53:13 +02:00
Nathan Mattes
6af94352e2 Remove NavigationBarTitleView and add first draft of TimelineStatusPill (IOS-234) 2024-04-05 14:27:06 +02:00
Nathan Mattes
3fe855273b Rename a few things here and there (IOS-235) 2024-04-04 13:28:07 +02:00
Nathan Mattes
1583ce0d9a Add a new loading-state for timeline-switches (IOS-235)
Gosh, this took longer than expected. It didn't work for quite some time but the trick is to check for the states in several places, like in HomeTimelineViewModel+Diffable or when the timeline reached the end. Those triggered a reload and we don't want that in case the state is `contextSwitch`.
2024-04-04 12:19:44 +02:00
Nathan Mattes
86ab9101a3 Fix loading of older posts (IOS-235)
i.e. consider different timelines there as well
2024-04-04 12:19:44 +02:00
Nathan Mattes
5e1bb2cfaa Differ between local and following-timeline (IOS-235) 2024-04-04 12:19:44 +02:00
Nathan Mattes
4eed7df729 Remove dead code (IOS-235) 2024-04-04 12:19:44 +02: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
60aafe6330 Add JSON-based account-persistence (IOS-192)
This is per user.

Also: Fetch authenticated accounts regularly
Also: Move Persistence-stuff to MastodonCore because.
2023-12-31 12:57:56 +01:00
Marcus Kida
82cc0f2f3f
Tie JSON cache to domain based unique identifier 2023-12-27 10:35:00 +01:00
Marcus Kida
5532324f83
Implement caching for home timeline items (IOS-176) 2023-12-01 10:47:18 +01:00
Marcus Kida
9ce078ce3e
Fix loading of home timeline (IOS-176) 2023-11-22 13:18:41 +01:00
Marcus Kida
b010b6112e
Remove usage of Status (IOS-176) 2023-11-22 12:32:04 +01:00
Nathan Mattes
fbde2a5833 More cleanup 2023-09-22 15:27:46 +02:00
Nathan Mattes
e20b2e4e11 Present suggestions when user visits onboarding and doesn't follow people (IOS-157) 2023-05-25 14:42:00 +02:00
Nathan Mattes
0c224f47df
Implement post editing / edit history (#875)
Co-authored-by: Marcus Kida <marcus.kida@bearologics.com>
Co-authored-by: Jed Fox <git@jedfox.com>
2023-03-02 11:06:13 +01:00
Marcus Kida
9a3ba02683
feat(App): Implement Haptic Feedback for Tab switches and Timeline reload 2023-02-07 11:38:07 +01:00
Marcus Kida
3b87916d9a
chore(Feed): Improve Feed performance by fetching statuses in batches (#914) 2023-02-07 00:46:35 +01:00
Nathan Mattes
3e2282cb03
Merge pull request #783 from mastodon/ios_15
Bump Deplyment Target to iOS 15
2022-12-22 18:36:26 +01:00
Jed Fox
2d606a52af
Remove unused DateToolsSwift dependency 2022-12-20 14:49:15 -05:00
Nathan Mattes
1d7dc2f266 Bump to iOS 15 deployment target and fix build issues 2022-12-17 20:26:20 +01:00
CMK
02e3ad9a16 chore: [WIP] restore the replyTo entry for compose 2022-10-10 19:14:52 +08:00
CMK
bb5c999bea chore: [WIP] inject AuthContext into ViewModel 2022-10-09 20:07:57 +08:00
CMK
fa27a28a60 chore: move core logic into package 2022-10-08 13:43:06 +08:00
CMK
ca0a697cd0 chore: update navigation bar button item assets 2022-05-06 15:17:26 +08:00
CMK
66c1b71610 feat: add cell height cache for user timeline 2022-02-14 16:09:39 +08:00
CMK
54e84ed814 fix: [WIP] add suggestion account scene back 2022-02-10 19:30:41 +08:00
CMK
c1e1d527fe fix: add missing home timeline bottom fetcher 2022-02-10 16:43:26 +08:00
CMK
f4bb2d947f feat: update report flow 2022-02-08 12:36:06 +08:00
CMK
b76b3a2750 feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
CMK
19db0afa3e feat: update for new iPad UI 2021-10-28 19:17:41 +08:00
CMK
3bc1a3de39 feat: add scroll position record and shortcut bar 2021-09-28 19:58:14 +08:00
CMK
d8de3c4f65 feat: update sidebar UI 2021-09-24 19:58:50 +08:00
CMK
4db73d4f74 feat: purge home timeline when user sign out 2021-07-26 16:31:57 +08:00
CMK
cfc5987528 feat: add APNG supports for more label 2021-07-23 19:10:27 +08:00
CMK
41e16a4d2a fix: timeline may offset after first launch issue 2021-07-07 20:13:33 +08:00
CMK
86da7a8ba1 fix: GIF not load in some scene issue 2021-07-02 19:48:56 +08:00
CMK
353e752083 feat: trigger timeline fetching after publish post 2021-06-17 19:43:16 +08:00
sunxiaojian
e664722b13 chore: update UI/UX of suggestion account 2021-04-22 19:58:42 +08:00
sunxiaojian
326aea36cd fix: The empty view should not display when the user just sign-in the first time 2021-04-22 15:45:32 +08:00
sunxiaojian
46fe59c920 chore: add debounce for refresh 2021-04-22 10:11:19 +08:00
sunxiaojian
106a5cc71a fix: homeTimeline refresh after follow people 2021-04-21 18:52:09 +08:00
CMK
43ee11b863 feat: [WIP] add profile scene 2021-04-01 14:39:15 +08:00