- Migrate the empty view to a common view which vertically centers
itself to the screen's bounds
- Don't initialize underlying state variables in init as this is
discouraged behavior. Instead, hook the source list editor to an ID
that refreshes when an existing source list URL has been set
Signed-off-by: kingbri <bdashore3@proton.me>
The inset grouped list style has a top inset that adds extra space
between the navigation bar title and the list rows. Use introspect
to remove this space on UITableView and UICollectionView (for iOS 16).
Sections completely ignore the introspect changes, so add a section
header which removes the list row insets.
Signed-off-by: kingbri <bdashore3@proton.me>
- Make about header scrollable
- Add no sources text
- Add no source lists text
- Make edit source list start with current url
- Add loading indicator for versions
Updates are sent via an alert on starting the app. This can be
disabled in the settings menu.
A full version struct has been completed for flexible comparisons.
Version history can also be viewed in settings in case a user wants
to download an earlier version of the app.
Updates track Github releases.
Signed-off-by: kingbri <bdashore3@gmail.com>
When a search result is selected, there is usually a delay due to
the debrid dance of API routes for grabbing a download link to stream.
Add a loading indicator and prevent any other tasks from loading
unless the user cancels it.
iOS 14.5 was a huge update which added many QoL SwiftUI changes that
are consistent to modern iOS versions.
However, Ferrite supports iOS versions less than 14.5, mainly 14.3.
More fixes had to be added to make sure UI is consistent across
all OS versions.
Signed-off-by: kingbri <bdashore3@gmail.com>
Sources can now be updated based on the repo ID. To preserve repo IDs
across single URL links, the source lists can be edited and the ID
is transferred over.
Signed-off-by: kingbri <bdashore3@gmail.com>