Complete rebranding from jellypig to jellyflood including:
- Renamed all jellypig references to jellyflood
- Updated store implementations (jellypigstore -> jellyfloodstore)
- Moved jellypig tvOS to Swiftfin tvOS structure
- Updated service configurations and defaults
- Preserved all Xtream plugin support and EPG functionality
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* Various setting cleanup
* Remove Double headers
* My gradient did nothing... So resetting back to less.
* Reduce unnecessary formatting changes.
* Revisions https://github.com/jellyfin/Swiftfin/pull/1473#pullrequestreview-2745279339
* Subtitles was missing brightness. Subtitle shouldn't mirror title but image.
* Remove TODO.
* WIP
* Other Menu inits and AppSettingsView
* Linting & a touch of spacing.
* cleanup
* Init from CaseIterable
* User a Picker instead of just a ForEach
* Remove InlineEnumToggle.
* cleanup
---------
Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
* Move Series Button to the About Section IF the item is an episode. Otherwise, continue using that image as just an image. tvOS & iOS.
* use posterbutton
---------
Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
* Button cleanup & errorViews
* Change the Sign Out button to be `ListRowButton`. Sets a better height value using `maxHeight` to ensure that it doesn't exceed the `ListRow` sizing.
* deleteUsersButton needs to be manually set back to 75
* wip
---------
Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
* Selection & Fix ServerSelectionMenu padding
* ButtonStyle
* Move from `FullScreenMenu` to just use `Menu` Remove usages of `FullScreenMenu` since it's no longer used anywhere else.
* Remove unused `FullScreenMenu`
* Remove unused `SelectServerView` since it's now in the `ServerSelectionMenu`
* Selection menu fixes
* Focus issues
* clean up
---------
Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
* UserSignInView and ConnectToServerView Cleanup
* Public User icon changes, move the Jellyfin 'NavigationBar' to a `View Modifier` for easier re-use.
* A better solution
* isLoading == isLoading NOT isLoading == true
* clean up
---------
Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
* Creation of an Alert Input Button based on the Chevron Button.
* Only one button required for both iOS and tvOS
* wip
---------
Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
* Update PosterButton.swift
Added accessibility labels to enable voice over on TVOS to read film titles on posters in media.
* lint
---------
Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
* Rebasing https://github.com/jellyfin/Swiftfin/pull/1212 on Main. Also, less baggage and random crap.
* Change 0 to Disabled. Better mirror iOS and tvOS Alerts for MaxNextUpDays.
* Review Changes:
Don't use the property wrappers in non-view contexts. While they technically can still work, use the subscript instead at the usage sites.
Use the dayInterval(0 ... 1000) format instead, then we don't need maxNextUpDays.
* Remove unused strings, and unused variables
* Add a tvOS TODO to double check the Done/Number button on the alert.
* Rename ExperimentalSettingsView.swift to PlaybackQualitySettingsView.swift
Fix Merge
* Rename MaximumBitrateSettingsView.swift to PlaybackQualitySettingsView.swift
fix merge
* Re-implement on Main. Should now have all the Main changed. Added a new change to use the Device Profile as a Transcoding Profile.
* Part 1 -> Making VideoPlayerType into a struct (I Hope) correctly
* Part 1.1 -> Making VideoPlayerType into a struct (I Hope) correctly
* Remove unneeded Files
* Missing file + CustomDeviceProfileSelection -> CustomDeviceProfileAction Rename
* Change + to Appending
* Attempt to add StorageValues+User. Not sure if this is correct?
* Move the Array unwrapping to funcitons. Not required but this should help prevent accidently doing this wrong. Add subtitles back into the custom profiles since that somehow got dropped. Added a PlaybackCompatibility enum. This might need to work for more than just video
* Complete rewrite to allow multiple profiles, compatibility mode, and directplay.
* Hardward -> Hardware
* Update CustomDeviceProfileSettingsView.swift
Double Licensing
* It was actually really easy to implement iOS... Trash cans still look weird and small.
* Swipe to Delete instead of the edit button
* wip
* wip
* Linting
* tvOS Implementation
* wip
* wip
* cleanup
* Create Package.resolved
---------
Co-authored-by: Joseph Kribs <joseph@kribs.net>
Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
* Settings Cleanup. Replace strings with labels. Enforce the same font. Ensure Forms don't get clipped by their boundries. Create consistent, reusable button sizing/coloring. Apply to all Settings Pages.
* Remove custom Button/Form styling in exchange for just using .scrollClipDisabled()
* Swap back to Jellyfin Purple from Purple.
* Remove Check Button. Check all Section Inits where possible. Make Server Details Server non-focusable.
Create a new menu for Server Details selection. This is a WIP awaiting feedback from https://github.com/jellyfin/Swiftfin/pull/1163#discussion_r1705957885
---------
Co-authored-by: Joseph Kribs <joseph@kribs.net>