You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Originally the redesign was being done in SwiftUI in #79, but there are too many performance issues. I don't think SwiftUI was designed to draw this many shapes on screen at once. Unless there's something else I'm doing wrong idk.
The more days I would add the laggier it would get, even with LazyVStacks. The current app goes back 1 year, but I kept having to cut that number down as more features were added to the redesign.
My current plan is to more-or-less start over, using the same design, but implementing it in UIKit. Doing it with a UITableView would allow me to reuse the rows for much better performance and allow an indeterminate number of days in the backlog.
OK so I created feature/#81/ui-rewrite-iOS-16 which would set the minimum version to iOS 16 so I could use UIHostingConfiguration on table view cells. This was cuz I was lazy about finishing the UI implementation, and better to get something out that only supports iOS 16+ than not get anything out at all. Well now I'm realizing that the only things I had remaining in the UIKit implementation were responding to group changes and supporting "multiple" Tracks. The header can be loaded using a UIHostingController on iOS 14+. So it might actually not be too bad to revert that one change and go back to supporting iOS 14.
Activity
[#81] Create tabbing table view
[#81] Restore page on device rotate
skjiisa commentedon Mar 7, 2022
See https://github.com/Isvvc/Tickmate-PageView
[#81] Load views and view controllers from Tickmate-PageView
[#81] Add basic implementation of new UI
[#81] Refactor Tick button configuration
[#81] Support ticking and reactive UI updates
skjiisa commentedon Oct 11, 2022
What's still left to be done in feature/#81/page-view
Edit: also changes from feature/#81/ui-rewrite-iOS-16, minus the iOS 16-only changes, and I think I've decided to revert those.
[#81] Refactor tick button configuration into a new TickButton class
[#81] Add haptics when ticking on new UI
[#81] Add debug option to view new UI from settings
[#81] Configure cells using UIHostingConfiguration and the existing D…
[#81] Hide redundant dates
[#81] Add tracks headers
[#81] Load groups
[#81] Refresh page view when settings change
[#81] Load ungrouped tracks
[#81] Respond to changes to individual tracks
skjiisa commentedon Jan 9, 2023
OK so I created feature/#81/ui-rewrite-iOS-16 which would set the minimum version to iOS 16 so I could use
UIHostingConfigurationon table view cells. This was cuz I was lazy about finishing the UI implementation, and better to get something out that only supports iOS 16+ than not get anything out at all. Well now I'm realizing that the only things I had remaining in the UIKit implementation were responding to group changes and supporting "multiple" Tracks. The header can be loaded using aUIHostingControlleron iOS 14+. So it might actually not be too bad to revert that one change and go back to supporting iOS 14.