* Split app into core and app:phone
* Use global versionCode and versionName
* Clean up gradle dependencies
* Use string formatting inside getString function
* Move proguard file to app:phone
* Move app_navigation and BasePlayerActivity to app:phone
* Add buildTypes to core gradle and remove buildFeatures
* Add suffix core to core namespace
* Split code into 4 more modules: data, preferences, player:core and player:video
* Clean up some gradle files
* Clean up data gradle
* Remove duplicate Constants.kt
* Use AppPreferences in more places
* Split off strings
* Remove unused animations
* Make about_libraries strings non-translatable
* Move mpv assets to player:video module
* Make AppPreferences a Singleton
* Merge MainActivity and MainActivityTv
* Merge AddServerFragment and TvAddServerFragment
* Merge LoginFragment and TvLoginFragment
* Add new focus effect
* Add libraries to tv home
* Fix home empty when navigating back on mobile
* Add loading indicator to home fragment
* Add empty LibraryFragment
* Add focus outline to settings button
* Use DiffCallback for updating home fragment
* Visually upgrade MediaDetailFragment
* Make all home items focusable in touch mode
* Add new focus border to person item
* Add LibraryFragment layout for TV
(Whilst also making a clusterfuck of the navigation)
* Add missing try-catch in HomeViewModel
* Don't show CancellationException on AddServerFragment
* Fix a few crashes plus errors
* Add person detail screen
Displays actor/actresses portrait and text info + list of movies/show this person starred in. Text info is max 5 lines with View More button if ellipsized. View More toggle is reset upon orientation change since in landscape mode ellipsize might not be necessary.
* Remove useless StarredInAdapter.kt
* Fix image view shape
* Improve UI
Not exactly how I would like it but will do for now
* Add error handling
Adds a lot of LiveData which may not be ideal, but is better than crashing due to connection errors.
Co-authored-by: jarnedemeulemeester <jarnedemeulemeester@gmail.com>