* Added RadarrManualImportConfigure for manual import config options
* Default bottom modal sheet to not expand
* Shrinkwrap modal listviews around content
* use keyboardDismissBehavior for all ListView
* Ensure keyboard is unfocused when opening the drawer
* Fetch and store quality definitions in global Radarr state
* Ability to configure language and quality profile for manual import instances
* Reworking all search bar implementations, integrated scroll back for Lidarr across module
* (ui): [Dashboard] Clean up of dashboard code, integrated scroll to top support
* (ui): [SnackBar] Remove all deprecated uses of LSSnackBar, add scrollback for NZBGet, improve error handling in queue
* (ui): Removed usage of old StickyListView, ReorderableListView, integrated LunaScaffold into base routes
* (flutter): Update packages
* (flutter): Remove flutter_sticky_header package
* (ui): Remove unused deprecated classes
* (chore): Update changelog
* (fix): [Dashboard/Calendar] Radarr releases were not considering digital release date
* (ui): [Sonarr] Adapted for scroll back to top functionality, remove more deprecated UI elements
* (ui): Refactored Tautulli, Removed ALL deprecated UI elements from LunaSea
* (ui): Fixed inconsistent usage of material and luna colours across UI
* (fix): [Sonarr/Radarr] Do not show "Search For..." button when the query is empty, but there are no results
* (chore): Updated changelog
* (fix): [Sonarr/Add] Fix search queries not gettting executed
* (fix): [Tautulli] Remove unused global state elements
* (feat): [UI/AppBar] Ability to hide the leading widget
* (fix): [Radarr/Languages] Fix "Unknown" language not being shown in selection dialog
* (feat): [Radarr/Import] Ability to search movies to select, toggle real and proper toggles
* (chore): Updated packages
* (ui): [Bottom Sheet] Do not use the root navigator
* (ui): [Button] Remove the small border around buttons in the AMOLED theme
* (ui): [Bottom Bar] Make vertical padding symmetrical when using top actions
* (radarr): [State] Store languages in Radarr global state
* (radarr): [Manual Import] Implement design for manual import file tile
* (radarr): [Manual Import] Added stub bottom action bar, adjusting button colour designs across Radarr
* (ui): [Colors] Minor tweaks to the colour palette (excluding primary theme colours)
* (ui): [Theme] Abstract theme dependency injection checks
* (ui): [Changelog] Sticky full changelog button to bottom action bar within modal
* (localization): Updated localization
* (system): Update changelog URL
* (ui): [Buttons] Implement new design for buttons, integrate across Radarr
* (chore): Update changelog
* (radarr): [Edit] Fix long delay when updating a movie
* (ui): [Settings] Started shift to new button action bar styling
* (ui): [Settings] Adapt all actions to sticked navigation action bar
* (ui): [Lidarr] Updated to use new button & navigation action bar design spec
* (ui): [NZBGet] Updated to use new button & navigation action bar design spec
* (ui): [SABnzbd] Updated to use new button & navigation action bar design spec
* (ui): [Search] Updated to use new button & navigation action bar design spec
* (ui): [Search Bar] Add static getter for margin within preferred size bottom search bar
* (ui): [Messages] Remove usages of deprecated message widgets
* (ui): [Sonarr] Updated to use new button & navigation action bar design spec
* (ui): [Sonarr/Add] View a series' TheTVDB page by long-pressing the tile
* (ui): [Tautulli] Updated to use new button & navigation action bar design spec
* (ui): [Radarr] Use accent colour for background of "Search For..." tile in catalogue
* (chore): Updated Changelog
* [iOS/Build] Add GoogleUtilities pod to prevent archive errors
* (chore) version bump
* [Git] Initialize blackbox
* [Git] Initialize blackbox
* [Git/Blackbox] Add me@jagandeepbrar.io as admin
* registered in blackbox: ios/ExportOptions.plist
* registered in blackbox: ios/GoogleService-Info.plist
* registered in blackbox: android/key.properties
* registered in blackbox: android/app/google-services.json
* Re-encrypted keys
* registered in blackbox: android/key.jks
* Updated key.properties, re-encrypted
* [Android/Keystore] Update same key.properties
* [Tautulli/Activity] Incorrectly localized "Transcodes" string
* [Radarr, UI] Implemented quick manual import, Implemented new design of ExpandableTile across UI (#378)
* Use local path for radarr package
* [Radarr/Manual Import] Browse filesystem, trigger quick import
* [UI/Buttons] Normalize the height of all buttons
* Update packages
* [ListView] Exposed itemExtent property
* [Lidarr/Releases] Move from LSExpandable to LunaExpandableListTile implementation
* [Tautulli/Logs] Use the new expandable table card styling
* [SABnzbd/History] Use the newer expandable table card styling
* [NZBGet/History] Use the newer expandable table card styling
* [UI/Button] Reduce size of the loader and icon to closer match text size
* [Sonarr/Releases] Use the newer expandable table card styling
* [Sonarr/Episodes] Use the newer expandable table card styling
* [UI/Table] Safe-guard title and body text, show emdash when receiving null data
* [Radarr/Details] Show monitor status and properly update the overview table on edit or monitor status changes
* Updated changelog
* [Sonarr/Queue & Episodes] Cleaned up implementation of expandable tile
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (14 of 14 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/nb_NO/
* Translated using Weblate (Swedish)
Currently translated at 100.0% (14 of 14 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/sv/
* Translated using Weblate (German)
Currently translated at 100.0% (68 of 68 strings)
Translation: LunaSea/Tautulli
Translate-URL: https://hosted.weblate.org/projects/lunasea/tautulli/de/
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 80.8% (55 of 68 strings)
Translation: LunaSea/Tautulli
Translate-URL: https://hosted.weblate.org/projects/lunasea/tautulli/nb_NO/
* Translated using Weblate (Swedish)
Currently translated at 100.0% (68 of 68 strings)
Translation: LunaSea/Tautulli
Translate-URL: https://hosted.weblate.org/projects/lunasea/tautulli/sv/
* Translated using Weblate (Russian)
Currently translated at 57.3% (39 of 68 strings)
Translation: LunaSea/Tautulli
Translate-URL: https://hosted.weblate.org/projects/lunasea/tautulli/ru/
* (chore) Build localizations
* [Tautulli/Webhooks] Implement webhook data handlers for all Tautulli webhooks (#380)
* [Tautulli/Webhooks] Handle transcode decision change and watched event types
* [Radarr/Sonarr] Safe-guard webhooks by pushing the home route on invalid received data blocks
* [Tautulli/Webhooks] Implemented all webhooks
* Translated using Weblate (French)
Currently translated at 100.0% (78 of 78 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (German)
Currently translated at 100.0% (78 of 78 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/de/
* Translated using Weblate (Russian)
Currently translated at 92.8% (13 of 14 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/ru/
* [Release] (chore): Dirty v5.0.0+50000013 (#382)
* [Radarr/Manual Import] Add search bar for host system path, add stub manual import page
* [Radarr/Manual Import] Change path bar text to "File Browser..."
* [Radarr/Manual Import] Pass "/" if textController text is null
* [Radarr/Import] Stub details state
* [Database] Correctly register LunaIndexerIcon hive adapter
* [Radarr/Import] Filter directories when typing path, Fetch manual import results with stub cards
* [UI/Bottom Bar] Abstract bottom action bar, use on add movie page
* [UI/Navigation Bar] Add option to attach stickied top actions to navigation bar
* [Radarr/Edit] Use stickied bottom action bar for buttons
* [Radarr/Details] use sticky navigation actions for interactive and automatic search
* [Dialogs] CheckboxTiles were padded too aggressively in the X-axis
* [Sentry] Remove remaining references to Sentry
* (chore) Build localizations
* (chore) Update changelog
* Preparing to shift GitHub repository structure
Co-authored-by: Allan Nordhøy <epost@anotheragency.no>
Co-authored-by: Patrik Hauguth <patrik.hauguth@gmail.com>
Co-authored-by: cpt-kuesel <jln.sltr@pm.me>
Co-authored-by: Artem <KovalevArtem.ru@gmail.com>
Co-authored-by: Antoine C <contact+weblate@antoinecardon.fr>
NEW
- [-Arr/Releases] Match torrent seeder colours to the web GUI
- [Firebase/Analytics] Added analytics for breadcrumb tracking in crashes
- [Logger] Utilize a new, custom built on-device logging system
- [Logger] Compact/delete old log entries once the log count passes 100
- [Logger] Exported logs are now in JSON format
- [Routing] Protect all module routes by showing a "Not Enabled" screen when the module is not enabled
- [Settings/System] Added toggle to disable Firebase Analytics
- [Tautulli/Activity] Show custom season titles from Plex's new TV agent
TWEAKS
- [Radarr/Files] Add languages to file block
- [Radarr/Files] Small changes to table titles
- [System/Logs] Reimplemented logger view
- [System/Logs] Removed viewing the stack trace within the application (still viewable within the exported logs)
- [System/Logs] Added the exception to the expanded table instead of a separate dialog popup
- [Tautulli/Activity] Minor UI tweaks including showing the full season title and italicizing the episode title
- [UI/Navbar] Jump instead of animate to page when tapping a navbar item
FIXES
- [Firebase/Crashes] Do not log DioError/networking exceptions
- [Flutter] Updated packages
- [Flutter] Upgrade all Comet.Tools packages to null-safety/NNBD
- [Radarr/Releases] Negative format scores were not being shown
- [Share] The sharesheet could break after the first time it was opened
- [Strings] Safe-guard many substring operations
- [Tautulli/Activity] Play/paused/buffering icon was not properly left aligned to the text
- [Tautulli/Users] User images would not be fetched on newer versions of Tautulli
- [UI/UX] Modal scroll controller was not being attached to the ListView in a bottom modal sheet
- [UI/UX] Do not log errors when network images fail to load
- [UI/UX] Prevent attempting to load background images that are passed an empty URL
- [URLs] Safe-guard launching specific invalid URLs
NEW
- [Radarr/Files] Add video and audio codec to the media file card
- [Search] Now supports infinite scrolling for loading additional pages of results
- [Search] Much faster parsing of XML responses
- [Search] Fully adapted for localization
TWEAKS
- [Search] Now returns 50 results per infinite scrolling page
- [Search] Removed support for sorting the catalogue and instead show the results in the order the indexer returns the data
- [Search] Removed support for filtering releases by a search query
- [Search] Minor tweaks to the icons on the indexer, category, and subcategory tiles
FIXES
- [Search] Search would only return 10 results
- [Search] Age of the release could show as "Unknown Age" in some cases
* [Radarr] Added very basic localization file for testing
* Added minimal LunaSea localization file
* Translations update from Weblate (#325)
* Added translation using Weblate (German)
* Translated using Weblate (German)
Currently translated at 25.0% (1 of 4 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/de/
* Added translation using Weblate (French)
* Translated using Weblate (French)
Currently translated at 25.0% (1 of 4 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (4 of 4 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Deleted translation using Weblate (German)
Co-authored-by: Jagandeep Brar <me@jagandeepbrar.io>
Co-authored-by: Antoine C <contact+weblate@antoinecardon.fr>
* [Localization] Updated keys
* [Strings] Removed internal constant LunaSea to ease localization efforts
* Added translation using Weblate (French)
* Translated using Weblate (French)
Currently translated at 100.0% (1 of 1 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/fr/
* [Radarr] Added additional localization strings
* [Locale/Radarr] Additional strings
* Added translation using Weblate (Norwegian Bokmål)
* Added translation using Weblate (Norwegian Bokmål)
* Translated using Weblate (French)
Currently translated at 100.0% (11 of 11 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (1 of 1 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/nb_NO/
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 90.9% (10 of 11 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/nb_NO/
* Translated using Weblate (French)
Currently translated at 100.0% (11 of 11 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* [localizations] sort keys
* [Packages] Migration to Fluttter v2 and NNBD Compatibility (#329)
* Updated packages
* Added system level Firebase Crashlytics to replace Sentry
* Started migration to crashlytics
* [Crashlytics] Adjusted dialog to reflect analytics, add crash button
* [Settings] Removed test crash tile
* [Changelog] Pull changelog version and build from application package
* Added easy_localization package
* Added stub localization handler
* [Localization] Added package and assembly script (#330)
* Updated packages
* Added system level Firebase Crashlytics to replace Sentry
* Started migration to crashlytics
* [Crashlytics] Adjusted dialog to reflect analytics, add crash button
* [Settings] Removed test crash tile
* [Changelog] Pull changelog version and build from application package
* Added easy_localization package
* Added stub localization handler
* [Localization] Added easy_localization package, added script to concat all localization files
* Removed license shield
* [Localization] Integrated system localization handling (#331)
* [Localization] use dash delimiter
* Translated using Weblate (English)
Currently translated at 100.0% (11 of 11 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/en/
* [Localization] Added ability to switch languages, updated Radarr localization (#333)
* [Scripts, Localization] Updated prepare script to print nicer JSON, add additional strings for Radarr
* Updated localizations, switch remaining Radarr strings that are available
* Translated using Weblate (French)
Currently translated at 100.0% (12 of 12 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (12 of 12 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/nb_NO/
* Generated new local assets
* [radarr/add_movie] Strings adapted for localizations and added to localization files
* Translated using Weblate (English)
Currently translated at 100.0% (2 of 2 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/en/
* [Localizations] Rebuild
* Translated using Weblate (French)
Currently translated at 100.0% (18 of 18 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2 of 2 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/fr/
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (2 of 2 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/nb_NO/
* [Radarr/Add Movie] Adapted for localized strings
* [Radarr/Add Details] Adapted for localized strings
* [Radarr/Edit Movie] Adapted for localized strings
* Translated using Weblate (French)
Currently translated at 100.0% (3 of 3 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (25 of 25 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* [Chore] Rebuilt localizations
* [Radarr/Dialogs] Updated a few dialogs to reflect localized titles
* [Localization] Ability to disable localization options internally
* [DateTime] Show "Just Now" when time difference is under 10 seconds
* [Search] Switch to new XML parsing package/engine
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 96.7% (30 of 31 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/nb_NO/
* Translated using Weblate (French)
Currently translated at 100.0% (31 of 31 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (4 of 4 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/fr/
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (4 of 4 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/nb_NO/
* [Localization] (chore) Rebuild localization
* [Chore] Moved localization to system folder
* Added translation using Weblate (Swedish)
* Added translation using Weblate (Swedish)
* Translated using Weblate (Swedish)
Currently translated at 100.0% (4 of 4 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/sv/
* Translated using Weblate (Swedish)
Currently translated at 100.0% (31 of 31 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/sv/
* [Localization] Added support for Swedish (sv)
* [Radarr/Types] Adapted all type readable strings for localization
* [Radarr] Continued work on adapting for localization
* Translated using Weblate (French)
Currently translated at 100.0% (71 of 71 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (9 of 9 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/fr/
* [Localization] (chore) Build localization
* [Chore] Cleanup, move and adapt drawer to LunaUI
* [Drawer] Cleanup drawer builder
* Translated using Weblate (English)
Currently translated at 100.0% (9 of 9 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/en/
* Translated using Weblate (English)
Currently translated at 100.0% (10 of 10 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/en/
* [UI] Move "luna_ui" to "ui", old "ui" to "deprecated_ui"
* [-arr/Add] Tags set when adding content are now stored in the database
* [-arr/Links] Added Trakt link, normalize sizes, update TMDB logo
* Add weblate link, disable additional languages on release mode, updated changelog
Co-authored-by: Weblate (bot) <hosted@weblate.org>
Co-authored-by: Antoine C <contact+weblate@antoinecardon.fr>
Co-authored-by: Allan Nordhøy <epost@anotheragency.no>
Co-authored-by: Weblate <noreply@weblate.org>
Co-authored-by: Patrik Hauguth <patrik.hauguth@gmail.com>
NEW
- [Webhooks] Show series, movie, or artist cover photos in incoming system notifications
- [Webhooks/Radarr] Jump directly into the content by tapping the notification
- [Webhooks/Sonarr] Jump directly into the content by tapping the notification
- [-arr/Details] Added a button to the AppBar to jump directly into the edit page
TWEAKS
- [Radarr/Files] Moved the video block above the audio block
FIXES
- [AppBar/Dropdown] Vertical padding around title when the profile dropdown is visible was incorrect
- [Radarr/Details] If the movie was not found, it would show an infinite loader, now shows a "No Movies Found" message
- [Radarr/Releases] Changing the sorting or filter method would not scroll the list back to the top
NEW
- [Radarr/Disk Usage] Added a progress bar to better visualize disk usage
- [Search] Show comment and download links in the expanded table
- [Settings/Search] Ability to toggle off showing comment and download links
- [UI/UX] If a URL is in a table, tap it to open the URL or long press to copy the URL
TWEAKS
- [-arr/Releases] Improve the layout of the rejection reasons dialog
- [Radarr/Health] Merged health check into system status
- [UI/UX] Added more descriptive tooltips to all popup menu buttons
- [UI/UX] Adjusted the style of splash/highlight inking
FIXES
- [Images] Images could fail to load with specific headers
- [Radarr/Disk Usage] An invalid total or free space value would cause a grey screen
- [Radarr/Releases] Clear button for the search bar would not show up
FIXES
- [Radarr/History] Tapping on AppBar to scroll back would not work
- [Radarr/Add] Content padding when the summary was only 1 line was incorrect
- [Search] No results would show up
NEW
- [Radarr/Health] View health check messages
FIXES
- [Radarr/Movie] Ensure that the movie list has started refreshing before exiting the movie details after deleting
- [Radarr/History] Specific custom formats could cause history and file information to fail to load
NEW
- [Dashboard] "Home" has been renamed to "Dashboard"
- [Radarr/Catalogue] If no movie is found in the search query, given an option to search to add the movie
- [Radarr/Discover] Add the ability to discover movies from your import lists & Radarr recommendations
- [Radarr/Releases] Ability to set sorting direction, category, and filtering method
- [Settings/Radarr] Ability to toggle on or off Radarr suggestions in the discover page
TWEAKS
- [Drawer] Removed the option to use categories/folders in the drawer
- [Settings/Config] Sort configuration options within modules for cleaner isolation and easier expansion for future configuration options
- [Settings/Profiles] Renaming a profile now checks for an existing profile with the same name within the prompt
- [Settings/Profiles] Adding a profile now checks for an existing profile with the same name within the prompt
- [Settings/Profiles] The delete profile prompt now hides the currently enabled profile, and shows a snackbar if only one profile exists
- [Settings/Wake on LAN] Allow clearing the broadcast and MAC addresses to empty values
FIXES
- [Radarr] Support for Radarr v3.1.0+ (nightly builds)
- [Radarr/Add] Instantly show a movie as addable again if removed right after adding it
- [Radarr/Cast] If a job or character name is empty, show a dash instead of an empty space
- [Radarr/Catalogue] Instantly remove the movie tile when removing a movie
- [Radarr/Edit] Padding around the "Update Movie" button was incorrect
- [Toasts] In some cases, the error was not being passed through to the error viewer
- [UI/UX] Upstream framework support for basic mouse/trackpad highlight and scrolling support
- [UI/UX] Tapping the AppBar to scroll back in a nested route would scroll back the parent route as well
- [UI/UX] Use the recommended safe area padding at the bottom of lists for fullscreen devices
NEW
- [Radarr] Completely rewritten from the ground-up
- [Radarr] View system status, disk usage, and manage tags
- [Radarr] Catalogue, upcoming, missing, tags, and quality profiles are now held in-state between module switches
- [Radarr/Add] Long-pressing a search result tile will open the movie's TMDB entry
- [Radarr/History] Now an infinite scrolling list
- [Radarr/Movie] Cast information, movie-specific history, more detailed file information, more detailed overview page
- [Radarr/Filtering] Improved sorting and filtering speed, performance, and consistency
- [Radarr/Filtering] Ability to set sorting and filtering defaults in settings
- [Radarr/Filtering] Many additional filtering options
- [Haptics] Added haptic feedback to all buttons, toggles, and dropdowns
- [Quick Actions] Default "Settings" quick action added to end of the list (if there is room)
- [UI/UX] (Radarr Only For Now) Ability to tap the AppBar to scroll to top
- [UI/UX] (Radarr Only For Now) If the list is in a tabbed PageView, tapping the active tab will scroll the list to the top
- [UI/UX] (Radarr Only For Now) If the keyboard is open, scrolling the list, swiping between pages, or opening the drawer will dismiss the keyboard
- [Webhooks] Notification webhooks will now show as an in-app heads up if LunaSea is open at the time of receiving the notification
TWEAKS
- [Radarr] Now only supports v3.0.0 and higher of Radarr
- [Radarr] Many visual changes, too many to list
- [Radarr] The tab "History" has been replaced with "More"
- [Radarr/Edit] Monitor toggle has been moved to the edit prompt
- [Sonarr/Filtering] Updated button to use standard filtering icon
- [Tautulli/Activity] Show session type and bandwidth type breakdown on activity page
- [Tautulli/Activity] Cleanup player information to more closely resemble web GUI
- [Tautulli/Activity] Show subtitle stream decision
- [UI/UX] Reduced the weight of bold text across the application
- [UI/UX] Added padding to bottom of lists for devices that require a safe area
- [UI/UX] Active tab in navigation bar now has a border with the AMOLED theme
FIXES
- [Changelog] Properly align/pad "Full Changelog" button at the end of the changelog
- [Flutter] Update packages
- [Flutter] Now using the beta channel
- [Quick Actions] Improve internal implementation of quick actions to be more stable and reliable
- [Settings/Modules] Newly set headers would sometimes not be passed to the connection test
- [Sonarr/Edit] Series path prompt would show an incorrect title
- [Sonarr/Description] Show "No summary is available" when there is no summary instead of an empty string
- [Sonarr/Releases] Default sorting direction was using catalogue default value
- [Tautulli/Graphs] Description of some graphs were not correct (Thanks @ZuluWhiskey!)
- [Tautulli/IPs] Fix location showing as null for local addresses
- [UI/UX] Border radius for the splash highlight wouldn't clip correctly on slim buttons
- [UI/UX] Margin/size of sort/filter buttons were off by a few pixels
- [UI/UX] InkWell splash now clips correctly to the rounded borders of popup menu buttons
* Updated all packages
* [iOS] Added associated domain for webcredentials (autofill)
* [IAPs] Remove all references or code for a pro upgrade
* [Android] Added asset_statements for autofill association
* [Accounts] Ability to send password reset email
* [Sonarr/Upcoming] Change "Not Downloaded" to "Missing"
* [Sonarr/Add] Fixed error log showing series ID as null
* [Messages] Separate messages (including changelog) to its own Hive box to prevent repeated message prompts
* [Changelog] Write build number from PackageInfo to database instead of JSON
* [Actions] Cleanup quick actions, removed Siri suggestions package and initialization
* Update contributers file
* Updated changelog
* Add Siri Suggestions Template (#297)
* Updated version, removed stub siri suggestions
* [Flutter] Updated packages
* [Firebase] Allow a user to copy their device or user ID from the help prompt in the account section
* [Sonarr/Releases] Add loading state to download button
* [Sonarr/Upcoming] "Upcoming" to "Unaired", show "Unaired" on home calendar
* [Android] Correctly set Android notification icon
* Updated CHANGELOG.md
Co-authored-by: Kristian Matthews <kristian.matthews@me.com>
TWEAKS
- [Sonarr/Upcoming] If an episode has not aired, show it as "Upcoming" instead of "Not Downloaded"
FIXES
- [Accounts] Register device token to database for future notification support
- [Accounts] Improve validation for email and passwords
- [Radarr] Fix some durations being displayed twice
- [UI/TextField] Show errors as snackbar instead of in-line error
NEW
- [Accounts] Added LunaSea accounts
- [Accounts] Ability to backup, restore, and delete cloud configurations
- [Backups] All backups now contain all customization and configuration options in LunaSea
- [Changelog] Show changelog on launch if a new version is installed
- [Changelog] Use a new bottom sheet UI for the changelog
- [Settings/Modules] Add an information/help button with module descriptions and links
TWEAKS
- [Radarr] Always show the amount of days content will be available instead of limiting it to only content in the next 30 days
- [Settings] Moved "Backup & Restore" and "Logs" to "System" section
- [Settings] Merged "Customization" and "Modules" sections into "Configuration"
- [Settings/Sonarr] Removed the need to enable Sonarr to test the connection
- [Settings/Tautulli] Removed the need to enable Tautulli to test the connection
FIXES
- [In App Purchases] Ensure all in app purchases are marked as "consumed"
- [Flutter] Updated packages
- [Logging] Updated Sentry to v4 framework to improve capturing fatal/crashing bugs
- [Settings/Logs] Hide exception and stack trace buttons when an error is not available
- [Settings/Resources] Updated URL endpoints
- [Sonarr/History] Fixed history fetching the oldest entries, not the newest
- [State] Correctly clear state when clearing LunaSea's configuration
- [Tautulli/Activity] Fixed consistency of hardware transcoding indicator compared to the web UI
- [UI/Divider] Fix consistency of divider width across regular and AMOLED dark theme
NEW
- [Settings/Modules] Add an information/help button with module descriptions and links
TWEAKS
- [Radarr] Always show the amount of days content will be available instead of limiting it to only content in the next 30 days
- [Settings] Moved "Backup & Restore" and "Logs" to "System" section
- [Settings] Merged "Customization" and "Modules" sections into "Configuration"
- [Settings/Sonarr] Removed the need to enable Sonarr to test the connection
- [Settings/Tautulli] Removed the need to enable Tautulli to test the connection
FIXES
- [IAPs] Ensure all IAPs are marked as "consumed"
- [Flutter] Updated packages
- [Logging] Updated Sentry to v4 framework to improve capturing fatal/crashing bugs
- [Settings/Logs] Hide exception and stack trace buttons when an error is not available
- [Sonarr/History] Fixed history fetching the oldest entries, not the newest
- [State] Correctly clear state when clearing LunaSea's configuration
- [Tautulli/Activity] Fixed consistency of hardware transcoding indicator compared to the web UI
- [UI/Divider] Fix consistency of divider width across regular and AMOLED dark theme
NEW
- None
TWEAKS
- None
FIXES
- [Sonarr/v2] Fix inability to interactively search for releases
- [Routing] Fix black screen when popping back from nested calendar routes
- [Flutter] Update packages
NEW
- [Backup & Restore] Backup files now use the .lunasea extension (older .json backups are still supported)
TWEAKS
- [Backup & Restore] Use share sheet to save or share backup file
- [Search/Download] Use share sheet to save or share NZB files
- [Logs/Export] Use share sheet to save or share logs file
FIXES
- [Backup & Restore] Using the share sheet now fixes the issue of inaccessible logs and backups on newer Android and iOS devices
- [Build] Update gradle & reintegrate podfile
- [Flutter] Update packages
NEW
- [Sonarr/Queue] Show percentage complete
- [Sonarr/Episodes] If the episode is in the queue, show details of download status
TWEAKS
- [Sonarr/Queue] Updated styling, show additional information
- [Settings/Resources] Hide link to documentation until I actually finish it
FIXES
- [Sonarr/Queue] Correctly handle failed state for queue record
- [Sonarr/Queue] Fix collapsing of tiles on state rebuild
- [Backup & Restore] Fix grey screen when restoring configuration with a "default"-named profile
NEW
- [Sonarr/Queue] Check and update the queue in the background every 60 seconds
- [Sonarr/Queue] Ability to view and manage your queue
- [Sonarr/Queue] Ability to delete an item in the queue
- [Sonarr/Sorting] Ability to set the initial sorting direction alongside the sorting type for series and releases
TWEAKS
- [Radarr] Use Radarr v3 icon across the UI
- [Settings/Dialogs] Small tweaks and additional notes for entering hosts and passwords
- [Settings/Host Dialog] Add validator on host to ensure user adds http:// or https://
FIXES
- [UI/Checkbox] Fix overly vibrant checkbox background
- [Sonarr/Add] Fix possible grey screen when adding a show with no seasons yet
- [Flutter] Upgraded Flutter & Packages
NEW
- [Sonarr] Ability to manage your tags
- [Sonarr/Add] Ability to set tags when adding a new series
- [Sonarr/Edit] Ability to update tags when editing a series
FIXES
- [Routing] Fixed some issues with routing
- [Sonarr/Add] After adding a series, hitting back will now show the series as added
NEW
- [Images] Ability to set (or entirely disable) the opacity of the background image for cards
- [Sonarr] Ability to set the default sorting type for series and releases
- [Tautulli/Activity] Show the ETA for when the session will be completed
- [Tautulli/Activity] Show if the hardware transcoding is being used on the stream
FIXES
- [Networking] Ensure that insecure (HTTP/80) connections are allowed at the platform-level
- [Flutter] Upgraded Flutter & Packages
NEW
- [Networking] Strict TLS/SSL validation is now disabled globally
- [Routing] Hold the AppBar back button to pop back to the home page of the module
- [Settings/Sonarr] Toggle to enable Sonarr v3 features
- [Sonarr] Complete rewrite of Sonarr
- [Sonarr] State is now held across module switches
- [Sonarr/Overview] View tags applied to series
- [Sonarr/Catalogue] (v3 only) Ability to set and update language profile
- [Sonarr/Catalogue] Ability to view all, only monitored, or only unmonitored series
- [Sonarr/Releases] (v3 only) Ability to interactively search for season packs
- [Sonarr/Releases] Ability to view all, only approved, or only rejected releases
TWEAKS
- [Settings] Removed all toggles for strict TLS
- [Sonarr] Many tweaks to Sonarr's design
- [Sonarr/Add] (v3 only) Tapping an already-added series will take you to the series page
- [Sonarr/Add] Automatically navigate to newly added series
- [Sonarr/Series] Toggling monitored state of series has now been moved to the edit prompt
FIXES
- [Images] Images will now load for invalid/self-signed certificates
- [Tautulli/Activity] Fix grey screen for music activity
- [TextField] Fix TextField actions (cut, copy, paste, etc.) not showing
- [Timestamps] Fix 12:xx AM being shown as 00:xx AM
- Additional small bug fixes
Tautulli is now feature-complete (for now)! There will be no additional functionality in the remaining 4.0.0 TestFlights, with this release being considered the first release candidate.
NEW
- [Tautulli] Implemented media details page
- [Tautulli] Implemented IP address details page
- [Tautulli] Implemented libraries & library details page
- [Tautulli] Implemented search page to search libraries
- [Tautulli/Global Settings] Option to trigger deletion of temporary sessions
- [Tautulli/Activity Details] AppBar button to jump to user details
- [Tautulli/History Details] AppBar button to jump to user details
- [Tautulli/History Details] AppBar button to jump to media details
- [Tautulli/More] Tiles for Libraries & Search
- [Settings/Tautulli] Ability to set the default page for all pages with bottom navigation bars
- [Settings/Calendar] Ability to set how many days in the past and future to fetch calendar entries for
TWEAKS
- [Tautulli] Navigation index state is no longer remembered
- [Tautulli] Small tweaks to make UI more consistent
- [Calendar] Default past and future days is now 14 days for each
FIXES
- [iOS 14] Fix text looking "squished" on iOS 14 devices
A quick update to fix a major routing issue, and also give some nice quality of life customizations for Tautulli.
NEW
- [Tautulli] Ability to set a default, prefilled termination message
- [Tautulli] Ability to set the activity refresh rate
- [Tautulli] Ability to set statistics item count
TWEAKS
- [Tautulli/More] Removed “libraries” tile
- [Tautulli/More] Added stub “Check for Updates” tile
FIXES
- [Android] Fixed routing issue with back button on Android devices
NEW
- [Tautulli] Implemented viewing of all types of logs
- [Tautulli/Activity] Show badge indicating the number of active streams on the navigation bar
- [Drawer] Option to not categorize/group modules
TWEAKS
- [Images] Images are no longer cached to the device storage to heavily improve performance & reduce crashing on older/lower-end devices
- [Images] Fetch images at specific resolutions instead of full resolution to reduce network performance and decrease memory pressure
- [Search] Further improve adult category hiding logic
- [Settings] Settings now replaces the active module/route and shows the drawer on the base route
- [Settings/System] Removed clear image cache tile
FIXES
- [Tautulli/Recently Added] The correct poster was not being shown for some items
- [Settings/Logs] Logs could be shown in reverse order
OTHER
- Many behind the scenes changes to navigation routing & memory management
- Updated packages & Flutter
NEW
- None
TWEAKS
- [Settings/Customization] Grey-out toggle for AMOLED borders when not using AMOLED dark mode
FIXES
- [Tautulli] Dialogs were not dismissible when executing an action
This update tweaks the way state works in Tautulli, and will now only store/update the activity, user list, and history in the global state. The remaining data fetched while browsing Tautulli will remain in "module" state, as in it will remain loaded until you switch to a different module. This allows for reduced memory pressure, especially when older modules get updated to store some state across module switches.
NEW
- [Tautulli] Statistics page
- [Tautulli] Recently added page
TWEAKS
- [Tautulli/State] Reduced content that remains in global state to reduce memory pressure
- [Tautulli] Reduced the amount of entries fetched in lists to reduce memory pressure
FIXES
- [Startup] Initialize the logger before anything else to allow logging errors in the startup routine
NEW
- [Settings] Entirely revamped the settings page to allow for easier navigation for new users
- [Search] Ability to set custom headers for individual indexers
TWEAKS
- [Settings] Split apart customization and configuration of modules, and add AppBar actions to allow quickly switching between customization and configuration
FIXES
- None
NEW
- [Timestamps] Option to use 24 hour timestamps
- [Tautulli/Activity] Refresh information while viewing details
- [Tautulli/History] Implemented global history page & history details
- [Tautulli/More] Added tiles for all features, including all unfinished features
- [Tautulli/Synced] Implemented synced items view for all users
TWEAKS
- [Tautulli/Activity] Move terminate session to button below activity block
- [Tautulli] Background refresh user lists on re-entry into Tautulli route
FIXES
- Fix small errors and crashes related to null data
NEW
- [Quick Actions] Enable home screen quick actions to quickly launch into up to 4 modules
- [Tautulli/User] Implemented user pages including profile, history, synced, and IP addresses
- [Settings/Resources] Added link to join TestFlight
TWEAKS
- [Home/Modules] Slightly adjusted design of quick links
- [Settings] Slightly adjusted design of module tiles
FIXES
- [Home/Modules] Search tile would not show up after adding first indexer until a route change
- [Tautulli/Activity] Tautulli could show an incorrect transcode container
FIXES
- [Tautulli] Fix cases where a grey screen would appear when opening the module
- [Search] Fix adult categories not hiding correctly with some indexers
NEW
- Nothing
TWEAKS
- Nothing
NEW
- [Tautulli] View Activity
- [Tautulli] View activity details
- [Tautulli] View list of users
- [Tautulli] Ability to backup configuration & database
- [Tautulli] Ability to delete cache & image cache
- [Drawer] Ability to set the initial expanded state of categories (automation, clients, & monitoring)
TWEAKS
- [UI/Loader] New loading indicator
- [Home/Calendar] Separate calendar view type into its own preference
- [Home/Calendar] Show no modules enabled message when there are no automation modules enabled, not just no modules overall
FIXES
- [Profiles] Safeguarded fetching of enabled module
NEW
- [Home/Calendar] New "schedule" view to view all days as one list
- [Home/Modules] Option to use module "brand" colours or the LunaSea list colours
- [Search] Option to hide adult categories
- [-arr/Catalogue] Ability to sort by date added
- [-arr/Search] Show the indexer/tracker on the collapsed tile
TWEAKS
- [Development] Updated Flutter packages
FIXES
- Multiple smaller crash/error fixes
Thanks to @lightglitch on GitHub for implementing the schedule calendar mode!
* [Database] Added client identifier (for later use)
* [UUID, Cleanup] Added UUID generator, follow guidelines for relative exports
* [Imports] Only show necessary imports for modules.dart import
* [Settings] Added stub Tautulli config page (hidden via module flags)
* [-arr/Details] Fix crashes related to setting state on unmounted widget
* [Radarr/Add] Fix crash when a movie does not have a minimum availability status
* [System] Updated packages/version number
* [Drawer] Cleanup drawer code, abstract out application name
* [Drawer] Added logo cover over drawer header
* [Image Cache] Switch to newer, more performant image cache manager
* [SABnzbd/History] History tiles are now expandable in-line, Stages route
* [Packages] Updated packages
* [NZBGet/History] History now shown as in-line expandable tiles
* [Radarr/Delete] Ability to add to exclusion list
* [Radarr/Dialogs] Fix padding around delete movie prompt
* [Home/Calendar] Ability to enter search directly from calendar entries
* [Lidarr] Ability to enter interactive search from missing page
* [Radarr] Ability to enter interactive search from missing & upcoming tiles
* [Sonarr] Ability to enter interactive search from missing & upcoming tiles
* [Release/TestFlight] v3.1.0+310003