jellyfin-androidtv

Android TV Client for Jellyfin

GPL-2.0 License

Stars
2.2K
Committers
855

Bot releases are hidden (Show)

jellyfin-androidtv - v0.16.0-beta.3

Published by nielsvanvelzen about 1 year ago

A new beta is ready. Today with some much requested fixes to the video player and some fixes to the new music player, enjoy!

If you appreciate my work, you can support me by donating via GitHub sponsors.

🐛 Beta information

Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.

🏗️ Enhancements

  • Add margin to media grid #2964, by @DoggoOfSpeed
  • Always use user provided fast forward and rewind values #2985, by @nielsvanvelzen

💥 Crash fixes

  • Improve BaseRowItem refreshing (fix crash after item deletion) #2949, by @nielsvanvelzen
  • Fix crash when same item appears in queue multiple times #2960, by @nielsvanvelzen

🔧 Bugfixes

  • Fix ExoPlayerBackend not triggering onMediaStreamEnd correctly #2961, by @nielsvanvelzen
  • Remove recordings from search results #2973, by @nielsvanvelzen
  • Fix disabling subtitles not always working #2984, by @nielsvanvelzen

📈 Dependency updates

These are not 100% accurate for this specific beta because I made a mistake in the script that generates this part, so this includes updates that were added in the first and second beta as well. Next beta/release will be accurate again!

  • Update io.gitlab.arturbosch.detekt by @renovate[bot] v1.23.0 #2790, v1.22.0 #2278
  • Update aboutlibraries by @renovate[bot] v10.8.2 #2885, v10.8.1 #2882, v10.8.0 #2851, v10.7.0 #2781, v10.6.3 #2738, v10.6.2 #2654, v10.6.1 #2525, v10.6.0 #2509, v10.5.2 #2288
  • Update github/codeql-action by @renovate[bot] 32dc499 #2537, 17573ee #2490, 8775e86 #2485, 39d8d7e #2478, 3ebbd71 #2451, 436dbd9 #2448, a34ca99 #2429, 515828d #2411, 959cbb7 #2290
  • Update io.mockk:mockk by @renovate[bot] v1.13.7 #2968, v1.13.4 #2454, v1.13.3 #2300
  • Update actions/setup-java digest to 1df8dbe #2303, by @renovate[bot]
  • Update appleboy/ssh-action action by @renovate[bot] v0.1.9 #2636, v0.1.8 #2552, v0.1.7 #2391, v0.1.6 #2328
  • Update actions/stale action to v7 #2356, by @renovate[bot]
  • Update androidx.compose.ui:ui-tooling by @renovate[bot] v1.4.2 #2681, v1.4.1 #2642, v1.4.0 #2616, v1.3.3 #2407
  • Update dependency androidx.appcompat:appcompat to v1.6.0 #2408, by @renovate[bot]
  • Update com.android.tools.build:gradle by @renovate[bot] v8.0.2 #2794, v8.0.1 #2729, v8 #2663, v7.4.2 #2548, v7.4.1 #2463, v7.4.0 #2412
  • Update com.android.tools:desugar_jdk_libs by @renovate[bot] v2.0.2 #2471, v2.0.1 #2466, v2 #2424
  • Update dependency com.google.devtools.ksp to v1.8.0-1.0.9 #2446, by @renovate[bot]
  • Update kotest by @renovate[bot] v5.6.1 #2671, v5.5.5 #2476
  • Update koin to v3.3.3 #2484, by @renovate[bot]
  • Update dependency androidx.work:work-runtime-ktx to v2.8.0 #2486, by @renovate[bot]
  • Update dependency io.insert-koin:koin-androidx-compose to v3.4.2 #2488, by @renovate[bot]
  • Update gradle by @renovate[bot] v8.2 #2866, v8.1.1 #2688, v8.1 #2660, v8 #2495, v7.6.1 #2535
  • Update androidx.compose.compiler:compiler by @renovate[bot] v1.5.0 #2900, v1.4.8 #2857, v1.4.7 #2733, v1.4.6 #2675, v1.4.5 #2658, v1.4.4 #2608, v1.4.3 #2533
  • Update glide to v4.15.0 #2538, by @renovate[bot]
  • Update androidx-lifecycle to v2.6.0 #2576, by @renovate[bot]
  • Update dependency androidx.recyclerview:recyclerview to v1.3.0 #2577, by @renovate[bot]
  • Update dependency com.google.android.exoplayer:exoplayer to v2.18.5 #2605, by @renovate[bot]
  • Update androidx.fragment:fragment-ktx by @renovate[bot] v1.6.0 #2832, v1.5.7 #2676, v1.5.6 #2609
  • Update github/codeql-action action by @renovate[bot] v2.21.3 #2951, v2.21.1 #2915, v2.20.4 #2894, v2.20.3 #2877, v2.20.2 #2868, v2.20.1 #2849, v2.20.0 #2839, v2.3.6 #2814, v2.3.5 #2797, v2.3.4 #2795, v2.3.3 #2739, v2.3.2 #2718, v2.3.1 #2705, v2.3.0 #2689, v2.2.11 #2647, v2.2.10 #2638, v2.2.8 #2611
  • Update androidx.activity:activity-ktx by @renovate[bot] v1.7.1 #2678, v1.7.0 #2612
  • Update androidx.compose.foundation:foundation by @renovate[bot] v1.4.2 #2679, v1.4.1 #2639, v1.4.0 #2613
  • Update androidx.compose.material:material by @renovate[bot] v1.4.2 #2680, v1.4.1 #2640, v1.4.0 #2615
  • Update actions/checkout action to v3.5.0 #2618, by @renovate[bot]
  • Update dependency androidx.core:core-ktx to v1.10.0 #2643, by @renovate[bot]
  • Update gradle/gradle-build-action action by @renovate[bot] v2.6.0 #2888, v2.5.1 #2860, v2.5.0 #2858, v2.4.2 #2669
  • Update Kotlin by @renovate[bot] v1.9.0 #2876, v1.7.2 #2859, v1.7.1 #2755
  • Update dependency com.squareup.leakcanary:leakcanary-android to v2.11 #2777, by @renovate[bot]
  • Update acra by @renovate[bot] v5.11.1 #2959, v5.10.1 #2845, v5.10.0 #2844
  • Update dependency androidx.preference:preference-ktx to v1.2.1 #2953, by @renovate[bot]
  • Update dependency org.jellyfin.exoplayer:exoplayer-ffmpeg-extension to v2.19.0+1 #2970, by @renovate[bot]
  • Update dependency androidx.media3:media3-session to v1.1.1 #2976, by @renovate[bot]
  • Update CI dependencies #2969, by @renovate[bot]
  • Update exoplayer #2977, by @renovate[bot]

Contributors

  • @renovate[bot]
  • @nielsvanvelzen
  • @DoggoOfSpeed
jellyfin-androidtv - v0.16.0-beta.2

Published by nielsvanvelzen about 1 year ago

Thank you for testing and reporting issues. In this second beta the app no longer crashes when attempting to show the next up screen.

If you appreciate my work, you can support me by donating via GitHub sponsors.

🐛 Beta information

Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.

🏗️ Enhancements

  • Add animation labels for Compose #2927, by @nielsvanvelzen
  • Simplify defaultRewindAmount and defaultFastForwardAmount options #2928, by @nielsvanvelzen
  • Use rounded corner for item details image #2929, by @nielsvanvelzen
  • Add (PlaySession-)identifier to MediaStream #2935, by @nielsvanvelzen

💥 Crash fixes

  • Fix crash when location type is null in CardPresenter #2932, by @nielsvanvelzen
  • Always use child fragment manager instead of activity fragment manager #2939, by @nielsvanvelzen
  • Fix crash when reusing actions in MyDetailsOverviewRowPresenter #2940, by @nielsvanvelzen

🔧 Bugfixes

  • Fix wrong lifecycle state in NextUpFragment #2938, by @nielsvanvelzen
  • Fix UI corruption when resuming the FullDetailsFragment #2943, by @nielsvanvelzen

Contributors

  • @renovate[bot]
  • @nielsvanvelzen
jellyfin-androidtv - v0.16.0-beta.1

Published by nielsvanvelzen about 1 year ago

The initial beta for version 0.16 is here! This release brings a new music playback backend and optimizes a lot of code to make future changes easier. A blog post with more details and screenshots will be available on release.

If you appreciate my work, you can support me by donating via GitHub sponsors.

🐛 Beta information

Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.

🌟 Highlights

  • Show resumable episodes in smart screen for shows #2361, by @Clubfan22
  • Show currently playing music on screensaver #2512, by @nielsvanvelzen
  • Add in-app screensaver #2539, by @nielsvanvelzen
  • Add separate buttons for artists and album artists in music smart screen #2667, by @nielsvanvelzen

🏗️ Enhancements

  • Add AV1 direct play support. #2392, by @MWisBest
  • Add playback rewrite backend and plugin systems #2401, by @nielsvanvelzen
  • Add media management preference #2415, by @nielsvanvelzen
  • Add ExoPlayer backend to playback rewrite #2427, by @nielsvanvelzen
  • Add PlaySessionService to playback rewrite #2428, by @nielsvanvelzen
  • Update playback module with SDK 1.4.1 changes #2441, by @nielsvanvelzen
  • Add option to enable playback rewrite for audio #2455, by @nielsvanvelzen
  • Add MediaSessionPlugin to playback rewrite #2457, by @nielsvanvelzen
  • adds "shuffle with" button if "always ask" is selected as preferred player. #2459, by @tim-vk
  • Add PlaybackManagerOptions for defaultRewindAmount and defaultFastForwardAmount #2473, by @nielsvanvelzen
  • Update item delete confirm message string #2477, by @nielsvanvelzen
  • Rewrite LibraryDreamService with Compose #2498, by @nielsvanvelzen
  • Improve Android TV home screen recommendations #2515, by @OctoNezd
  • Remove playlist creation from NowPlaying screen #2523, by @nielsvanvelzen
  • Update "Latest" media labels to be "Recently Added" #2549, by @thornbill
  • Always use getQuantityString() for time units #2553, by @nielsvanvelzen
  • Fix all string capitalization #2563, by @nielsvanvelzen
  • Use plurals for amount of tracks in album / episodes in season #2571, by @nielsvanvelzen
  • Explicitly use JDK 17 through gradle toolchains #2572, by @DavidFair
  • Add blurHashPainter composable #2585, by @nielsvanvelzen
  • Remove watched indicator from empty series #2589, by @nielsvanvelzen
  • Add media manager implementation using new playback module #2593, by @nielsvanvelzen
  • Add androidx.media2 MediaSessionService implementation #2594, by @nielsvanvelzen
  • Update and specify full action versions #2600, by @1337joe
  • Add (experimental) reactive homepage #2644, by @nielsvanvelzen
  • Fix BaseItemInfoRow not showing for persons #2659, by @nielsvanvelzen
  • Rewrite GridButton with Compose #2670, by @nielsvanvelzen
  • Remove BaseProfile #2691, by @nielsvanvelzen
  • Migrate search to SDK to fix cancellation issues #2727, by @polson
  • Fix screensaver support in video player #2749, by @nielsvanvelzen
  • Migrate ExoPlayer to StyledPlayerView #2754, by @nielsvanvelzen
  • Add playback order support to playback rewrite #2783, by @nielsvanvelzen
  • Enable playback rewrite by default for music #2802, by @nielsvanvelzen
  • Rewrite media session code with androidx.media3 #2803, by @nielsvanvelzen
  • Add repeat mode to playback rewrite #2810, by @nielsvanvelzen
  • Update unsupported server messages #2815, by @nielsvanvelzen
  • Add volume state to playback rewrite #2817, by @nielsvanvelzen
  • Use fast forward & rewind durations from preferences #2825, by @nielsvanvelzen
  • Replace Glide with Coil #2889, by @nielsvanvelzen
  • Remove AccountManager support #2890, by @nielsvanvelzen
  • Add preference to disable device type detection notification #2892, by @nielsvanvelzen
  • Improve codec info #2893, by @mohd-akram
  • Add music progress to screensaver #2922, by @nielsvanvelzen

💥 Crash fixes

  • Revert "Update dependency com.android.tools:desugar_jdk_libs to v2.0.1" #2468, by @nielsvanvelzen
  • Fix screensaver crash when loading an invalid backdrop image #2567, by @nielsvanvelzen
  • Fix crash when player controls are auto-hiding while closing the player #2848, by @nielsvanvelzen
  • Fix application crash on startup #2884, by @nielsvanvelzen
  • Fix crash when switching users while playing music #2923, by @nielsvanvelzen

🔧 Bugfixes

  • Ignore missing notification permission from Glide #2422, by @teobaranga
  • Fix crash when scaleType is null in AsyncImage #2554, by @nielsvanvelzen
  • Fix missing background in DreamContentLogo #2560, by @nielsvanvelzen
  • Fix playback rewrite audio queue in UI #2649, by @nielsvanvelzen
  • Disable MPEG transport stream container in ExoPlayer #2695, by @nielsvanvelzen
  • Fix ExoPlayer extensions not used for music playback #2711, by @nielsvanvelzen
  • Remove old screen locks #2746, by @nielsvanvelzen
  • Fix HomeFragmentLatestRow using wrong import for runBlocking function #2747, by @nielsvanvelzen
  • Add fallback image to LeanbackChannelWorker #2753, by @nielsvanvelzen
  • Fix app closing when media finishes playing #2756, by @nielsvanvelzen
  • Use navigation.goBack instead of activity finish in FullDetailsFragment #2757, by @nielsvanvelzen
  • Fix view binding leak in fragments #2763, by @nielsvanvelzen
  • Fix BackgroundService flickering #2773, by @nielsvanvelzen
  • Disable custom key handling when using playback rewrite #2804, by @nielsvanvelzen
  • Fix navigation reset called during back stack pop call #2869, by @nielsvanvelzen
  • Add missing view action to StartupActivity #2879, by @nielsvanvelzen
  • Fix video player background not black #2895, by @nielsvanvelzen

🔃 Refactoring

  • Remove gradlew-update.yaml workflow #2445, by @nielsvanvelzen
  • Split MediaManager into interface and implementation #2453, by @nielsvanvelzen
  • Split MediaManager into MediaManager and VideoQueueManager #2458, by @nielsvanvelzen
  • Remove selected photo item from MediaManager and do some more cleaning #2461, by @nielsvanvelzen
  • Replace sharedViewModel with activityViewModel #2518, by @nielsvanvelzen
  • Replace deprecated Bundle.get with Bundle.getParcelable #2519, by @nielsvanvelzen
  • Replace deprecated ExistingPeriodicWorkPolicy.REPLACE with ExistingPeriodicWorkPolicy.UPDATE #2524, by @nielsvanvelzen
  • Refactor CustomPlaybackTransportControlGlue to extract logic into actions #2569, by @DavidFair
  • Remove some unused drawables/strings/layouts #2570, by @nielsvanvelzen
  • Use ItemRowAdapterHelperKt.setItems for NextUpQuery in ItemRowAdapter #2641, by @nielsvanvelzen
  • Rewrite background service UI with compose #2652, by @nielsvanvelzen
  • Enable nonTransitiveRClass #2664, by @nielsvanvelzen
  • Enable nonFinalResIds #2665, by @nielsvanvelzen
  • Migrate video player & next up screen to fragments #2745, by @nielsvanvelzen
  • Inline validateAuthentication extension into MainActivity #2758, by @nielsvanvelzen
  • Use context in ItemLauncher #2760, by @nielsvanvelzen
  • Migrate some activity usages to context #2761, by @nielsvanvelzen
  • Use view binding in MainActivity & StartupActivity #2762, by @nielsvanvelzen
  • Remove left over search hint code #2772, by @nielsvanvelzen
  • Replace XML menus with Kotlin #2779, by @nielsvanvelzen
  • Convert queue service to core functionality #2801, by @nielsvanvelzen
  • Remove unused ProcessLifecycleInitializer #2880, by @nielsvanvelzen
  • Use data object in sealed interfaces #2920, by @nielsvanvelzen
  • Replace flow.collect usages with onEach & launchIn #2925, by @nielsvanvelzen

💡 Everything else

  • Add androidx.compose.compiler to libraries section in version catalog #2491, by @nielsvanvelzen
  • Revert "Update aboutlibraries to v10.6.0" #2520, by @nielsvanvelzen
  • Enable Renovate dependency dashboard #2774, by @nielsvanvelzen

📈 Dependency updates

  • Update dependency io.gitlab.arturbosch.detekt to v1.23.1 #2921, by @renovate[bot]
  • Update aboutlibraries to v10.8.3 #2898, by @renovate[bot]
  • Update github/codeql-action digest to 16964e9 #2583, by @renovate[bot]
  • Update Gradle Wrapper from 7.5.1 to 7.6 #2294, by @jellyfin-bot
  • Update dependency io.mockk:mockk to v1.13.5 #2656, by @renovate[bot]
  • Update actions/setup-java digest to 3f07048 #2482, by @renovate[bot]
  • Update appleboy/ssh-action action to v1 #2907, by @renovate[bot]
  • Update actions/checkout digest to ac59398 #2339, by @renovate[bot]
  • Update actions/stale action to v8 #2606, by @renovate[bot]
  • Update actions/upload-artifact digest to 0b7f8ab #2388, by @renovate[bot]
  • Update dependency androidx.compose.ui:ui-tooling to v1.4.3 #2736, by @renovate[bot]
  • Update dependency androidx.appcompat:appcompat to v1.6.1 #2483, by @renovate[bot]
  • Update dependency com.android.tools.build:gradle to v8.1.0 #2910, by @renovate[bot]
  • Update dependency com.android.tools:desugar_jdk_libs to v2.0.3 #2628, by @renovate[bot]
  • Update dependency com.google.devtools.ksp to v1.8.20-1.0.11 #2673, by @renovate[bot]
  • Update kotest to v5.6.2 #2750, by @renovate[bot]
  • Update koin to v3.4.2 #2822, by @renovate[bot]
  • Update dependency androidx.work:work-runtime-ktx to v2.8.1 #2610, by @renovate[bot]
  • Update dependency io.insert-koin:koin-androidx-compose to v3.4.4 #2674, by @renovate[bot]
  • Update dependency gradle to v8.2.1 #2887, by @renovate[bot]
  • Update dependency androidx.compose.compiler:compiler to v1.5.1 #2912, by @renovate[bot]
  • Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.5.0 #2536, by @renovate[bot]
  • Update glide to v4.15.1 #2590, by @renovate[bot]
  • Update gradle/gradle-build-action digest to 6095a76 #2544, by @renovate[bot]
  • Update androidx-lifecycle to v2.6.1 #2607, by @renovate[bot]
  • Update dependency androidx.recyclerview:recyclerview to v1.3.1 #2914, by @renovate[bot]
  • Update dependency com.google.android.exoplayer:exoplayer to v2.19.0 #2924, by @renovate[bot]
  • Update dependency androidx.fragment:fragment-ktx to v1.6.1 #2913, by @renovate[bot]
  • Update github/codeql-action action to v2.21.2 #2919, by @renovate[bot]
  • Update dependency androidx.activity:activity-ktx to v1.7.2 #2793, by @renovate[bot]
  • Update dependency androidx.compose.foundation:foundation to v1.4.3 #2734, by @renovate[bot]
  • Update dependency androidx.compose.material:material to v1.4.3 #2735, by @renovate[bot]
  • Update actions/checkout action to v3.5.3 #2837, by @renovate[bot]
  • Update dependency androidx.core:core-ktx to v1.10.1 #2748, by @renovate[bot]
  • Update gradle/gradle-build-action action to v2.6.1 #2899, by @renovate[bot]
  • Update Kotlin to v1.7.3 #2909, by @renovate[bot]
  • Update dependency com.squareup.leakcanary:leakcanary-android to v2.12 #2861, by @renovate[bot]
  • Update dependency androidx.window:window to v1.1.0 #2833, by @renovate[bot]
  • Update acra to v5.11.0 #2902, by @renovate[bot]
  • Update dependency androidx.media3:media3-session to v1.1.0 #2873, by @renovate[bot]
  • Update Kotlin #2247, by @renovate[bot]
  • Update koin #2348, by @renovate[bot]
  • Update Kotlin #2467, by @renovate[bot]
  • Update koin #2619, by @renovate[bot]
  • Update CI dependencies #2624, by @renovate[bot]
  • Update Kotlin #2627, by @renovate[bot]
  • Update CI dependencies #2657, by @renovate[bot]
  • Update CI dependencies #2662, by @renovate[bot]
  • Update Kotlin #2701, by @renovate[bot]
  • Update Kotlin #2751, by @renovate[bot]
  • Update koin #2808, by @renovate[bot]
  • Update Kotlin - autoclosed #2834, by @renovate[bot]
  • Update CI dependencies #2901, by @renovate[bot]
  • Update koin #2918, by @renovate[bot]

Contributors

  • @renovate[bot]
  • @nielsvanvelzen
  • @DavidFair
  • @jellyfin-bot
  • @Clubfan22
  • @MWisBest
  • @teobaranga
  • @tim-vk
  • @OctoNezd
  • @thornbill
  • @1337joe
  • @polson
  • @mohd-akram
jellyfin-androidtv - v0.15.11

Published by nielsvanvelzen over 1 year ago

🏗️ Enhancements

  • Add more logging to authentication code #2850, by @nielsvanvelzen
  • Show UI mode notification on startup screen #2864, by @nielsvanvelzen

🔧 Bugfixes

  • focus back on versions button when selecting a version #2819, by @StubbyB
  • Fix horizontal grid position resetting on resume #2862, by @nielsvanvelzen

Contributors

  • @nielsvanvelzen
  • @StubbyB
jellyfin-androidtv - v0.15.10

Published by nielsvanvelzen over 1 year ago

🏗️ Enhancements

  • Fix InfoLayoutHelper not using first video stream, update details when selecting version #2812, by @StubbyB

💥 Crash fixes

  • Fix rare race condition crash in HomeFragment #2780, by @nielsvanvelzen
  • Fix race condition in HomeFragment causing a crash #2805, by @nielsvanvelzen

🔧 Bugfixes

  • Hide SSA tags from SRT subtitles #2741, by @nielsvanvelzen
  • Fix PictureViewerFragment using activityViewModel #2770, by @nielsvanvelzen
  • Fix playback of seasons with external player #2786, by @nielsvanvelzen
  • Fix Live TV progress reporting #2816, by @nielsvanvelzen
  • Fix ItemLauncher retrieving base item via from media manager when launching a photo #2818, by @nielsvanvelzen

📈 Dependency updates

  • Update dependency com.google.android.exoplayer:exoplayer to v2.18.7 #2771, by @renovate[bot]
  • Update dependency org.jellyfin.exoplayer:exoplayer-ffmpeg-extension to v2.18.7+1 #2775, by @renovate[bot]

Contributors

  • @nielsvanvelzen
  • @renovate[bot]
  • @StubbyB
jellyfin-androidtv - v0.15.9

Published by nielsvanvelzen over 1 year ago

🔧 Bugfixes

  • Fix resume row not hiding when empty #2730, by @nielsvanvelzen

Contributors

  • @nielsvanvelzen
jellyfin-androidtv - v0.15.8

Published by nielsvanvelzen over 1 year ago

🏗️ Enhancements

  • Allow changing the (a)ac3 bitstreaming option on all devices #2716, by @nielsvanvelzen

🔧 Bugfixes

  • Fix ExpandableTextView cutting content #2709, by @nielsvanvelzen
  • Fix ExoPlayerProfile not always listing SubRip and SRT as external #2710, by @nielsvanvelzen
  • Fix ExoPlayer extensions not used for music playback (backport) #2712, by @nielsvanvelzen
  • Add support for retrieving resume items in BaseRowAdapter using the SDK #2723, by @nielsvanvelzen

📈 Dependency updates

  • Update dependency org.jellyfin.sdk:jellyfin-core to v1.4.2 #2704, by @renovate[bot]
  • Update dependency org.jellyfin.exoplayer:exoplayer-ffmpeg-extension to v2.18.6+1 #2714, by @renovate[bot]

Contributors

  • @nielsvanvelzen
  • @renovate[bot]
jellyfin-androidtv - v0.15.7

Published by nielsvanvelzen over 1 year ago

This release adds support for PGS and DVB subtitles without transcoding.

🏗️ Enhancements

  • Enable PGS subtitles in ExoPlayer #2690, by @nielsvanvelzen
  • Enable DVB subtitles in ExoPlayer #2694, by @nielsvanvelzen

💥 Crash fixes

  • Fix app crash when playback stop is requested without an active player #2668, by @nielsvanvelzen

🔧 Bugfixes

  • Fix offsetStreamIndex when selecting last track #2692, by @nielsvanvelzen
  • Fix support for switching embedded subtitle tracks in ExoPlayer #2693, by @nielsvanvelzen

📈 Dependency updates

  • Update dependency com.google.android.exoplayer:exoplayer to v2.18.6 #2682, by @renovate[bot]

Contributors

  • @nielsvanvelzen
  • @renovate[bot]
jellyfin-androidtv - v0.15.6

Published by nielsvanvelzen over 1 year ago

The Jellyfin Android TV app is now available on F-Droid 🎉.

🏗️ Enhancements

  • Add F-Droid badge to README #2635, by @nielsvanvelzen

💥 Crash fixes

  • Fix screenOrientation not set for PreferencesActivity #2629, by @nielsvanvelzen

🔧 Bugfixes

  • Save accounts to account manager by address #2591, by @nielsvanvelzen
  • Fix app closing when music queue ends #2621, by @nielsvanvelzen
  • Fix "null" on Live TV guide "load channels" button #2634, by @nielsvanvelzen

Contributors

  • @nielsvanvelzen
jellyfin-androidtv - v0.15.5

Published by nielsvanvelzen over 1 year ago

This update resets your choice for the "automatic sign in" option in some cases and you might need to select your account once after updating.

🔧 Bugfixes

  • Accept KEYCODE_ENTER as alt to KEYCODE_CENTER #2547, by @DavidFair
  • Add IncludeType param when sending number query #2556, by @omerinero
  • Add workaround for non reproducible baseline profiles in AGP #2558, by @nielsvanvelzen
  • Fix SearchFragment not restoring properly #2564, by @nielsvanvelzen
  • Always check server id when retrieving user data from AccountManagerStore #2587, by @nielsvanvelzen

📈 Dependency updates

  • Update dependency com.google.android.exoplayer:exoplayer to v2.18.4 #2557, by @renovate[bot]

Contributors

  • @nielsvanvelzen
  • @DavidFair
  • @omerinero
  • @renovate[bot]
jellyfin-androidtv - v0.15.4

Published by nielsvanvelzen over 1 year ago

🏗️ Enhancements

  • Mark LibVLC as experimental #2534, by @nielsvanvelzen

💥 Crash fixes

  • Fix rare picture viewer crash when album is empty #2469, by @nielsvanvelzen

🔧 Bugfixes

  • Fix old items are shown when new filter is applied. #2472, by @tim-vk
  • Don't show "invalid credentials" message when authentication fails with an SDK exception #2517, by @nielsvanvelzen
  • Only attach background service in activities #2542, by @nielsvanvelzen
  • Fix theme not applied before creating views #2543, by @nielsvanvelzen

📈 Dependency updates

  • Update dependency com.google.android.exoplayer:exoplayer to v2.18.3 #2505, by @renovate[bot]

Contributors

  • @nielsvanvelzen
  • @tim-vk
  • @renovate[bot]
jellyfin-androidtv - v0.15.3

Published by nielsvanvelzen over 1 year ago

🏗️ Enhancements

  • Increase amount of logs added to crash reports #2420, by @nielsvanvelzen

🔧 Bugfixes

  • Use HEADER_ACCEPT from SDK as Glide Accept header value #2442, by @nielsvanvelzen
  • Change opening menu to ACTION_UP instead of ACTION_DOWN #2443, by @nielsvanvelzen

📈 Dependency updates

  • Update dependency org.jellyfin.sdk:jellyfin-core to v1.4.1 #2440, by @renovate[bot]
    Noteworthy changes:
    • Explicitly set Accept header in KtorClient
    • Increase default socket timeout value to 30 seconds
    • Update OpenAPI to 10.8.9

Contributors

  • @nielsvanvelzen
  • @renovate[bot]
jellyfin-androidtv - v0.15.2

Published by nielsvanvelzen almost 2 years ago

🔧 Bugfixes

  • Fix BrowseGridFragment focus not restoring when going back #2395, by @nielsvanvelzen
  • Remove experimental audio codecs from transcoding profile #2397, by @nielsvanvelzen

Contributors

  • @nielsvanvelzen
jellyfin-androidtv - v0.15.1

Published by nielsvanvelzen almost 2 years ago

Welcome to the first (small) release of the year! In this version, we have addressed some issues related to music playback and its user interface.

🏗️ Enhancements

  • Support fast forward and rewind in audio player #2380, by @kevgrig
  • Allow all supported audio codecs in ExoPlayer transcoding profile #2381, by @nielsvanvelzen

💥 Crash fixes

  • Fix crash when opening menu for AlbumArtist #2373, by @nielsvanvelzen
  • Fix IndexOutOfBoundsException in setExoPlayerTrack #2385, by @nielsvanvelzen

🔧 Bugfixes

  • Fix scaling of album images in audio queue on now playing screen #2371, by @nielsvanvelzen

🔃 Refactoring

  • Update build files #2370, by @nielsvanvelzen

Contributors

  • @nielsvanvelzen
  • @kevgrig
jellyfin-androidtv - v0.15.0

Published by nielsvanvelzen almost 2 years ago

I'm excited to announce the third and final release of 2022 for the Android TV app. Read the blog post to learn about the changes in this release, or view the changelog below.

🌟 Highlights

  • Add new experimental picture viewer #1829, by @nielsvanvelzen
  • Add RTL Support #1842, by @hadicharara
  • Add audio night mode (as preference) to level out/compress audio volume. #1852, by @robertduplock
  • Add Subtitle Color Customization Features #1900, by @sparky3387
  • Add Quality Selection to Playback Overlay #1924, by @zkhcohen
  • Support previous button in video playlist #1941, by @kevgrig
  • Add ImageProvider for retrieval of images in platform integration #2210, by @nielsvanvelzen

🏗️ Enhancements

  • Add PlaybackForwardingActivity for bridging to new playback module #1092, by @nielsvanvelzen
  • Forward audio play requests to playback module #1114, by @nielsvanvelzen
  • Add monochrome layer to adaptive icon #2028, by @nielsvanvelzen
  • Support external subtitles in external player #2061, by @sunrisela
  • Update GitHub actions workflows #2094, by @nielsvanvelzen
  • Replace Kapt with KSP #2127, by @nielsvanvelzen
  • Rewrite navigation #2132, by @nielsvanvelzen
  • Add LifecycleAwareResponse #2148, by @nielsvanvelzen
  • Add PictureViewerFragment as destination #2149, by @nielsvanvelzen
  • Remove unused resources #2162, by @nielsvanvelzen
  • Show picture viewer controls by default #2169, by @nielsvanvelzen
  • Automatically hide picture viewer actions after 4 seconds #2170, by @nielsvanvelzen
  • Remove PhotoPlayerActivity #2171, by @nielsvanvelzen
  • Show keyboard on right on text search fragment #2178, by @nielsvanvelzen
  • Add Jetpack Compose support #2193, by @nielsvanvelzen
  • Don't use LibraryDreamService.TRANSITION_DURATION in FadeViewSwitcherLayout #2211, by @nielsvanvelzen
  • Use fade animation when navigating #2216, by @nielsvanvelzen
  • Rewrite SplashFragment in Compose #2223, by @nielsvanvelzen
  • Add placeholder drawable for ImageProvider #2229, by @nielsvanvelzen
  • Add Video Codec Tag #2245, by @The-Randalorian
  • Add dismissible notification for beta releases #2252, by @nielsvanvelzen
  • Remember button focus on summary page #2297, by @teobaranga
  • Remember button focus on details screen #2345, by @teobaranga

💥 Crash fixes

  • Misc crash fixes #1979, by @nielsvanvelzen
  • Fix crash when trying to start a picture slideshow #2000, by @nielsvanvelzen
  • Fix crash when opening favorites and video queue #2020, by @nielsvanvelzen
  • Fix app crashing when opening "other options" menu in FullDetailsActivity #2029, by @nielsvanvelzen
  • Always set base item type on custom base item dto instances #2033, by @nielsvanvelzen
  • Fix missing imports causing a build issue #2034, by @nielsvanvelzen
  • Fix two crashes when trying to view a person #2071, by @nielsvanvelzen
  • Fix crash when selecting or clicking items in grid view #2079, by @nielsvanvelzen
  • Check lifecycle state when runnable executes #2155, by @nielsvanvelzen
  • Fix PictureViewerFragment crashing when opening photo from latest row #2156, by @nielsvanvelzen
  • Check Lifecycle.State.STARTED instead of Lifecycle.State.INITIALIZED #2157, by @nielsvanvelzen
  • Fix app crash when playing trailers #2241, by @nielsvanvelzen
  • Use ItemRowAdapterHelper.setItems for more row types #2265, by @nielsvanvelzen
  • Fix opening user view with no collection type #2271, by @nielsvanvelzen
  • Fix NPE in ExternalPlayerActivity when getMediaSource() returns null #2272, by @nielsvanvelzen
  • Fix opening Live TV recordings #2284, by @nielsvanvelzen
  • Fix opening Live TV series timers #2285, by @nielsvanvelzen
  • Fix crash when opening Live TV series #2295, by @nielsvanvelzen
  • Rewrite session validation code to not use callbacks #2310, by @nielsvanvelzen
  • Live TV program end time & recording page fixes #2315, by @nielsvanvelzen
  • Fix crash when stopping playback with back button when refresh rate switching is enabled #2316, by @nielsvanvelzen
  • Remove direct path option from external player #2342, by @nielsvanvelzen
  • Fix race condition in ItemListFragment causing favorite music screen to crash #2351, by @nielsvanvelzen
  • Validate current user from UserRepository in validateAuthentication() #2354, by @nielsvanvelzen

🔧 Bugfixes

  • fix CommunityRating display #1992, by @Andy2244
  • Keep ordering from album view in picture viewer #1998, by @nielsvanvelzen
  • Fix NPE when live tv program is null #2092, by @nielsvanvelzen
  • Fix blurhash not showing in CardPresenter #2103, by @nielsvanvelzen
  • Fix series queueing not working #2105, by @nielsvanvelzen
  • Fix audio player screensaver starting too soon #2131, by @nielsvanvelzen
  • Don't use activity.isFinishing() #2159, by @nielsvanvelzen
  • Fix EnhancedBrowseFragment registering multiple listeners #2217, by @nielsvanvelzen
  • Load fresh item data in AudioTrackQueue #2224, by @nielsvanvelzen
  • Fix StartupActivity set destination is ignored #2228, by @nielsvanvelzen
  • Apply subtitle delay to external subs #2239, by @DenizenB
  • Always reset navigation in StartupActivity #2240, by @nielsvanvelzen
  • Fix focus in home screen when navigating back #2243, by @nielsvanvelzen
  • Avoid clearing all items on ItemRowAdapter load #2246, by @nielsvanvelzen
  • Fix bad version.ref in dependency catalog #2249, by @nielsvanvelzen
  • Fix missing checkboxes in player audio, subtitle and zoom menu #2254, by @nielsvanvelzen
  • Delay home fragment refreshing #2259, by @nielsvanvelzen
  • Fix EnhancedBrowseFragment duplicating items on resume #2266, by @nielsvanvelzen
  • Fix TimeUtils.getDate not using UTC for offset #2280, by @nielsvanvelzen
  • Fix notification card not focusable on older Android versions #2299, by @nielsvanvelzen
  • Fix LegacyImageCardView scaling on non-1080p devices #2308, by @nielsvanvelzen
  • Revert "Remember button focus on summary page" #2336, by @nielsvanvelzen

🔃 Refactoring

  • Move useExternalPlayer and getPlaybackActivityClass functions to new PlaybackLauncher interface #1064, by @nielsvanvelzen
  • Remove item delete functionality #1936, by @nielsvanvelzen
  • Remove usages of BaseItemType's that don't exist in the server anymore #1947, by @nielsvanvelzen
  • fix NextUp not working without clearing old video queue items #1951, by @mueslimak3r
  • Use AsyncImageView in ClockUserView #1966, by @nielsvanvelzen
  • Use AsyncImageView in GuideChannelHeader #1967, by @nielsvanvelzen
  • Refactor BrowseGridFragment hierarchy into a single class #1970, by @nielsvanvelzen
  • Use view binding directly in BrowseGridFragment #1973, by @nielsvanvelzen
  • Replace GSON encoding usages with kotlinx.serialization #1975, by @nielsvanvelzen
  • Migrate InfoLayoutHelper to use SDK models #1978, by @nielsvanvelzen
  • Use constants from SDK #1983, by @nielsvanvelzen
  • Always use SDK BaseItemPerson and PersonType #1984, by @nielsvanvelzen
  • Remove unused ApiEventListener from legacy apiclient #1985, by @nielsvanvelzen
  • Always use SDK SearchHint #1986, by @nielsvanvelzen
  • Simplify reportPlaybackStopped code #1993, by @nielsvanvelzen
  • Use SDK SortOrder enum in LibraryPreferences #1994, by @nielsvanvelzen
  • Remove commented log statements #1995, by @nielsvanvelzen
  • Use SDK in StartupActivity #1996, by @nielsvanvelzen
  • Remove USE_DOWNLOAD_API from picture viewer #1999, by @nielsvanvelzen
  • Migrate most of KeyProcessor to SDK types #2002, by @nielsvanvelzen
  • Use SDK in HomeFragment #2013, by @nielsvanvelzen
  • Replace most utils with SDK #2014, by @nielsvanvelzen
  • Rewrite MediaCodecCapabilitiesTest in Kotlin #2015, by @nielsvanvelzen
  • Migrate favorite and played toggles in KeyProcessor to SDK #2016, by @nielsvanvelzen
  • Remove unused video queue code #2021, by @nielsvanvelzen
  • Add empty playback modules for rewrite #2022, by @nielsvanvelzen
  • Rewrite ChapterItemInfo to not use the apiclient #2025, by @nielsvanvelzen
  • Replace BaseItemType usages with BaseItemKind (SDK) #2032, by @nielsvanvelzen
  • Add SocketInstance to dependency injection #2035, by @nielsvanvelzen
  • Rewrite DeviceUtils and Utils in Kotlin #2056, by @nielsvanvelzen
  • Replace BlurHashDecoder with com.vanniktech.blurhash dependency #2069, by @nielsvanvelzen
  • Rewrite data package in Kotlin #2070, by @nielsvanvelzen
  • Rewrite all Java interfaces in Kotlin #2072, by @nielsvanvelzen
  • Use appcompat theme as base #2073, by @nielsvanvelzen
  • Merge StdRowsFragment into HomeFragment #2074, by @nielsvanvelzen
  • Use MutableObjectAdapter<Row> for rows #2075, by @nielsvanvelzen
  • Use MutableObjectAdapter<Object> as base for ItemRowAdapter #2076, by @nielsvanvelzen
  • Rewrite CompositeListeners in Kotlin #2078, by @nielsvanvelzen
  • Rewrite BaseRowItem in Kotlin #2080, by @nielsvanvelzen
  • Migrate a lot of code to use BaseItemDto from SDK #2081, by @nielsvanvelzen
  • Disable jetifier #2090, by @nielsvanvelzen
  • Move package declaration to Gradle build files #2091, by @nielsvanvelzen
  • Use AsyncImageView for Live TV program image #2097, by @nielsvanvelzen
  • Don't use KoinJavaComponent in Kotlin files #2102, by @nielsvanvelzen
  • Remove most deprecation annotations #2104, by @nielsvanvelzen
  • Merge StdBrowseFragment and BrowseFolderFragment and rewrite in Kotlin #2107, by @nielsvanvelzen
  • Always use repeatOnLifecycle instead of launchWhenX functions #2108, by @nielsvanvelzen
  • Rewrite search UI in Kotlin #2110, by @nielsvanvelzen
  • Refactor AudioNowPlayingActivity to fragment #2112, by @nielsvanvelzen
  • Refactor FullDetailsActivity to fragment #2113, by @nielsvanvelzen
  • Refactor ItemListActivity to fragment #2114, by @nielsvanvelzen
  • Refactor LiveTvGuideActivity to fragment #2116, by @nielsvanvelzen
  • Remove key listener from BaseActivity #2117, by @nielsvanvelzen
  • Use fragment arguments instead of activity intent #2124, by @nielsvanvelzen
  • Add CustomMessageRepository, remove BaseActivity #2128, by @nielsvanvelzen
  • Remove GsonJsonSerializer #2145, by @nielsvanvelzen
  • Rewrite MyDetailsOverviewRow in Kotlin #2150, by @nielsvanvelzen
  • Rewrite presenters in Kotlin #2151, by @nielsvanvelzen
  • Replace Response<> usages with LifecycleAwareResponse<> in fragments #2158, by @nielsvanvelzen
  • Rewrite small playback related files in Kotlin #2164, by @nielsvanvelzen
  • Rename xml layout starting with activity_ to fragment_ #2232, by @nielsvanvelzen
  • Rewrite theme code to not use callbacks #2286, by @nielsvanvelzen
  • Remove mActivity from EnhancedBrowseFragment #2301, by @nielsvanvelzen

💡 Everything else

  • Add (empty) playback module and CODEOWNERS #1072, by @nielsvanvelzen
  • Update playback rewrite build files #1626, by @nielsvanvelzen
  • Forward music play requests to PlaybackLauncher #1937, by @nielsvanvelzen
  • Bump Android compile and target SDK to 32 (Android 12L) #1957, by @nielsvanvelzen
  • Bump Android compile & target version to 33 (Android 13) #2047, by @nielsvanvelzen
  • Switch slf4j timber to a different library #2096, by @nielsvanvelzen
  • Remove direct GSON dependency #2208, by @nielsvanvelzen
  • Add playback rewrite queue system #2209, by @nielsvanvelzen
  • Update Jellyfin SDK to 1.4.0-beta.1 #2234, by @nielsvanvelzen
  • Fix acra-core dependency using wrong name #2320, by @nielsvanvelzen
  • Split compose versions in catalog #2334, by @nielsvanvelzen

📈 Dependency updates

  • Update androidx.fragment:fragment-ktx
    • to v1.5.2 #1952, by @renovate[bot]
    • to v1.5.3 #2082, by @renovate[bot]
    • to v1.5.4 #2203, by @renovate[bot]
    • to v1.5.5 #2324, by @renovate[bot]
  • Update kotest
    • to v5.4.2 #1953, by @renovate[bot]
    • to v5.5.0 #2135, by @renovate[bot]
    • to v5.5.1 #2160, by @renovate[bot]
    • to v5.5.2 #2201, by @renovate[bot]
    • to v5.5.3 #2215, by @renovate[bot]
    • to v5.5.4 #2236, by @renovate[bot]
  • Update androidx.appcompat:appcompat
    • to v1.5.0 #1954, by @renovate[bot]
    • to v1.5.1 #2043, by @renovate[bot]
  • Update dependency org.videolan.android:libvlc-all to v3.5.1 #1956, by @renovate[bot]
  • Update org.jetbrains.kotlinx:kotlinx-serialization-json
    • to v1.4.0 #1987, by @renovate[bot]
    • to v1.4.1 #2174, by @renovate[bot]
  • Update github/codeql-action
    • to f5d217b #1988, by @renovate[bot]
    • to 7fee4ca #2005, by @renovate[bot]
    • to c7f292e #2010, by @renovate[bot]
    • to b398f52 #2023, by @renovate[bot]
    • to 6a38b7d #2063, by @renovate[bot]
    • to 904260d #2067, by @renovate[bot]
    • to 86f3159 #2084, by @renovate[bot]
    • to e0e5ded #2123, by @renovate[bot]
    • to 8075783 #2146, by @renovate[bot]
    • to cc7986c #2191, by @renovate[bot]
    • to ec3cf9c #2212, by @renovate[bot]
    • to 18fe527 #2235, by @renovate[bot]
    • to c3b6fce #2242, by @renovate[bot]
    • to 4238421 #2258, by @renovate[bot]
    • to 678fc3a #2273, by @renovate[bot]
  • Update io.mockk:mockk
    • to v1.12.7 #2006, by @renovate[bot]
    • to v1.12.8 #2064, by @renovate[bot]
    • to v1.13.1 #2087, by @renovate[bot]
    • to v1.13.2 #2118, by @renovate[bot]
  • Update dependency com.android.tools:desugar_jdk_libs to v1.1.8 #2008, by @renovate[bot]
  • Update dependency androidx.core:core-ktx to v1.9.0 #2044, by @renovate[bot]
  • Update actions/setup-java
    • to d854b6d #2046, by @renovate[bot]
    • to a18c333 #2109, by @renovate[bot]
    • to de1bb2b #2190, by @renovate[bot]
  • Update koin
    • to v3.2.1 #2050, by @renovate[bot]
    • to v3.2.2 #2089, by @renovate[bot]
    • to v3.2.3 #2192, by @renovate[bot]
    • to v3.3.0 #2206, by @renovate[bot]
  • Update actions/stale
    • to 99b6c70 #2062, by @renovate[bot]
    • to 5ebf00e #2147, by @renovate[bot]
  • Update com.android.tools.build:gradle
    • to v7.3.0 #2065, by @renovate[bot]
    • to v7.3.1 #2168, by @renovate[bot]
  • Update androidx.activity:activity-ktx
    • to v1.6.0 #2083, by @renovate[bot]
    • to v1.6.1 #2202, by @renovate[bot]
  • Update actions/stale action to v6 #2085, by @renovate[bot]
  • Update glide
    • to v4.14.0 #2115, by @renovate[bot]
    • to v4.14.1 #2126, by @renovate[bot]
    • to v4.14.2 #2152, by @renovate[bot]
  • Update Kotlin to v1.7.20 #2119, by @renovate[bot]
  • Update gradle/gradle-build-action
    • to fd32ae9 #2121, by @renovate[bot]
    • to 3fbe033 #2199, by @renovate[bot]
  • Update aboutlibraries
    • to v10.5.0 #2122, by @renovate[bot]
    • to v10.5.1 #2181, by @renovate[bot]
  • Update actions/checkout
    • to 93ea575 #2138, by @renovate[bot]
    • to 2541b12 #2141, by @renovate[bot]
  • Update dependency org.jellyfin.exoplayer:exoplayer-ffmpeg-extension to v2.18.1+2 #2142, by @renovate[bot]
  • Update com.google.devtools.ksp
    • to v1.7.20-1.0.7 #2172, by @renovate[bot]
    • to v1.7.20-1.0.8 #2237, by @renovate[bot]
  • Update actions/upload-artifact digest to 83fd05a #2195, by @renovate[bot]
  • Update io.insert-koin:koin-androidx-compose
    • to v3.2.2 #2198, by @renovate[bot]
    • to v3.3.0 #2204, by @renovate[bot]
  • Update gradle/wrapper-validation-action digest to 55e685c #2205, by @renovate[bot]
  • Update alexellis/upload-assets action to v0.4.0 #2222, by @renovate[bot]
  • Update eps1lon/actions-label-merge-conflict action to v2.1.0 #2231, by @renovate[bot]
  • Update androidx-compose to v1.3.1 #2250, by @renovate[bot]
  • Update dependency com.squareup.leakcanary:leakcanary-android to v2.10 #2251, by @renovate[bot]
  • Update org.jellyfin.sdk:jellyfin-core
    • to v1.4.0-beta.2 #2276, by @renovate[bot]
    • to v1.4.0 #2317, by @renovate[bot]
  • Update dependency androidx.compose.ui:ui-tooling to v1.3.2 #2335, by @renovate[bot]
  • Update exoplayer #2287, by @renovate[bot]

Contributors

  • @nielsvanvelzen
  • @renovate[bot]
  • @teobaranga
  • @hadicharara
  • @robertduplock
  • @sparky3387
  • @zkhcohen
  • @kevgrig
  • @mueslimak3r
  • @Andy2244
  • @sunrisela
  • @DenizenB
  • @The-Randalorian
jellyfin-androidtv - v0.15.0-beta.5

Published by nielsvanvelzen almost 2 years ago

Another beta with some more bug squashing. A big thank you to the community for for all the issue reports!

🐛 Beta information

Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.

🏗️ Enhancements

  • Remember button focus on details screen #2345, by @teobaranga

💥 Crash fixes

  • Remove direct path option from external player #2342, by @nielsvanvelzen
  • Fix race condition in ItemListFragment causing favorite music screen to crash #2351, by @nielsvanvelzen
  • Validate current user from UserRepository in validateAuthentication() #2354, by @nielsvanvelzen

Contributors

  • @nielsvanvelzen
  • @teobaranga
jellyfin-androidtv - v0.15.0-beta.4

Published by nielsvanvelzen almost 2 years ago

🐛 Beta information

Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.

🏗️ Enhancements

  • Remember button focus on summary page #2297, by @teobaranga

💥 Crash fixes

  • Rewrite session validation code to not use callbacks #2310, by @nielsvanvelzen
  • Live TV program end time & recording page fixes #2315, by @nielsvanvelzen
  • Fix crash when stopping playback with back button when refresh rate switching is enabled #2316, by @nielsvanvelzen

🔧 Bugfixes

  • Fix LegacyImageCardView scaling on non-1080p devices #2308, by @nielsvanvelzen
  • Revert "Remember button focus on summary page" #2336, by @nielsvanvelzen

💡 Everything else

  • Fix acra-core dependency using wrong name #2320, by @nielsvanvelzen
  • Split compose versions in catalog #2334, by @nielsvanvelzen

📈 Dependency updates

  • Update dependency org.jellyfin.sdk:jellyfin-core to v1.4.0 #2317, by @renovate[bot]
  • Update dependency androidx.fragment:fragment-ktx to v1.5.5 #2324, by @renovate[bot]
  • Update dependency androidx.compose.ui:ui-tooling to v1.3.2 #2335, by @renovate[bot]

Contributors

  • @nielsvanvelzen
  • @renovate[bot]
  • @teobaranga
jellyfin-androidtv - v0.15.0-beta.3

Published by nielsvanvelzen almost 2 years ago

This is the third beta for version 0.15. This release focuses on fixing issues reported by our community.

🐛 Beta information

Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.

💥 Crash fixes

  • Fix opening Live TV recordings #2284, by @nielsvanvelzen
  • Fix opening Live TV series timers #2285, by @nielsvanvelzen
  • Fix crash when opening Live TV series #2295, by @nielsvanvelzen

🔧 Bugfixes

  • Fix TimeUtils.getDate not using UTC for offset #2280, by @nielsvanvelzen
  • Fix notification card not focusable on older Android versions #2299, by @nielsvanvelzen

🔃 Refactoring

  • Rewrite theme code to not use callbacks #2286, by @nielsvanvelzen
  • Remove mActivity from EnhancedBrowseFragment #2301, by @nielsvanvelzen

📈 Dependency updates

  • Update exoplayer #2287, by @renovate[bot]

Contributors

  • @nielsvanvelzen
  • @renovate[bot]
jellyfin-androidtv - v0.15.0-beta.2

Published by nielsvanvelzen almost 2 years ago

This is the second beta for version 0.15. This release focuses on fixing issues reported by our community.

🐛 Beta information

Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.

💥 Crash fixes

  • Use ItemRowAdapterHelper.setItems for more row types #2265, by @nielsvanvelzen
  • Fix opening user view with no collection type #2271, by @nielsvanvelzen
  • Fix NPE in ExternalPlayerActivity when getMediaSource() returns null #2272, by @nielsvanvelzen

🔧 Bugfixes

  • Fix missing checkboxes in player audio, subtitle and zoom menu #2254, by @nielsvanvelzen
  • Delay home fragment refreshing #2259, by @nielsvanvelzen
  • Fix EnhancedBrowseFragment duplicating items on resume #2266, by @nielsvanvelzen

📈 Dependency updates

  • Update github/codeql-action
    • to 4238421 #2258, by @renovate[bot]
    • to 678fc3a #2273, by @renovate[bot]
  • Update dependency org.jellyfin.sdk:jellyfin-core to v1.4.0-beta.2 #2276, by @renovate[bot]

Contributors

  • @nielsvanvelzen
  • @renovate[bot]
jellyfin-androidtv - v0.15.0-beta.1

Published by nielsvanvelzen almost 2 years ago

This is the first beta for version 0.15. This release contains many changes to the internal code and thus might contain some bugs. Please report issues so we can fix them for the next betas and stable release.

🐛 Beta information

Beta versions are not guaranteed to work as expected. We encourage users to create detailed bug reports if any problems arise. Read our blog post for more information about our Android beta programs.

🌟 Highlights

  • Add new experimental picture viewer #1829, by @nielsvanvelzen
  • Add RTL Support #1842, by @hadicharara
  • Add audio night mode (as preference) to level out/compress audio volume. #1852, by @robertduplock
  • Add Subtitle Color Customization Features #1900, by @sparky3387
  • Add Quality Selection to Playback Overlay #1924, by @zkhcohen
  • Support previous button in video playlist #1941, by @kevgrig
  • Add ImageProvider for retrieval of images in platform integration #2210, by @nielsvanvelzen

🏗️ Enhancements

  • Add PlaybackForwardingActivity for bridging to new playback module #1092, by @nielsvanvelzen
  • Forward audio play requests to playback module #1114, by @nielsvanvelzen
  • Add monochrome layer to adaptive icon #2028, by @nielsvanvelzen
  • Support external subtitles in external player #2061, by @sunrisela
  • Update GitHub actions workflows #2094, by @nielsvanvelzen
  • Replace Kapt with KSP #2127, by @nielsvanvelzen
  • Rewrite navigation #2132, by @nielsvanvelzen
  • Add LifecycleAwareResponse #2148, by @nielsvanvelzen
  • Add PictureViewerFragment as destination #2149, by @nielsvanvelzen
  • Remove unused resources #2162, by @nielsvanvelzen
  • Show picture viewer controls by default #2169, by @nielsvanvelzen
  • Automatically hide picture viewer actions after 4 seconds #2170, by @nielsvanvelzen
  • Remove PhotoPlayerActivity #2171, by @nielsvanvelzen
  • Show keyboard on right on text search fragment #2178, by @nielsvanvelzen
  • Add Jetpack Compose support #2193, by @nielsvanvelzen
  • Don't use LibraryDreamService.TRANSITION_DURATION in FadeViewSwitcherLayout #2211, by @nielsvanvelzen
  • Use fade animation when navigating #2216, by @nielsvanvelzen
  • Rewrite SplashFragment in Compose #2223, by @nielsvanvelzen
  • Add placeholder drawable for ImageProvider #2229, by @nielsvanvelzen
  • Add Video Codec Tag #2245, by @The-Randalorian
  • Add dismissible notification for beta releases #2252, by @nielsvanvelzen

💥 Crash fixes

  • Misc crash fixes #1979, by @nielsvanvelzen
  • Fix crash when trying to start a picture slideshow #2000, by @nielsvanvelzen
  • Fix crash when opening favorites and video queue #2020, by @nielsvanvelzen
  • Fix app crashing when opening "other options" menu in FullDetailsActivity #2029, by @nielsvanvelzen
  • Always set base item type on custom base item dto instances #2033, by @nielsvanvelzen
  • Fix missing imports causing a build issue #2034, by @nielsvanvelzen
  • Fix two crashes when trying to view a person #2071, by @nielsvanvelzen
  • Fix crash when selecting or clicking items in grid view #2079, by @nielsvanvelzen
  • Check lifecycle state when runnable executes #2155, by @nielsvanvelzen
  • Fix PictureViewerFragment crashing when opening photo from latest row #2156, by @nielsvanvelzen
  • Check Lifecycle.State.STARTED instead of Lifecycle.State.INITIALIZED #2157, by @nielsvanvelzen
  • Fix app crash when playing trailers #2241, by @nielsvanvelzen

🔧 Bugfixes

  • fix CommunityRating display #1992, by @Andy2244
  • Keep ordering from album view in picture viewer #1998, by @nielsvanvelzen
  • Fix NPE when live tv program is null #2092, by @nielsvanvelzen
  • Fix blurhash not showing in CardPresenter #2103, by @nielsvanvelzen
  • Fix series queueing not working #2105, by @nielsvanvelzen
  • Fix audio player screensaver starting too soon #2131, by @nielsvanvelzen
  • Don't use activity.isFinishing() #2159, by @nielsvanvelzen
  • Fix EnhancedBrowseFragment registering multiple listeners #2217, by @nielsvanvelzen
  • Load fresh item data in AudioTrackQueue #2224, by @nielsvanvelzen
  • Fix StartupActivity set destination is ignored #2228, by @nielsvanvelzen
  • Apply subtitle delay to external subs #2239, by @DenizenB
  • Always reset navigation in StartupActivity #2240, by @nielsvanvelzen
  • Fix focus in home screen when navigating back #2243, by @nielsvanvelzen
  • Avoid clearing all items on ItemRowAdapter load #2246, by @nielsvanvelzen
  • Fix bad version.ref in dependency catalog #2249, by @nielsvanvelzen

🔃 Refactoring

  • Move useExternalPlayer and getPlaybackActivityClass functions to new PlaybackLauncher interface #1064, by @nielsvanvelzen
  • Remove item delete functionality #1936, by @nielsvanvelzen
  • Remove usages of BaseItemType's that don't exist in the server anymore #1947, by @nielsvanvelzen
  • fix NextUp not working without clearing old video queue items #1951, by @mueslimak3r
  • Use AsyncImageView in ClockUserView #1966, by @nielsvanvelzen
  • Use AsyncImageView in GuideChannelHeader #1967, by @nielsvanvelzen
  • Refactor BrowseGridFragment hierarchy into a single class #1970, by @nielsvanvelzen
  • Use view binding directly in BrowseGridFragment #1973, by @nielsvanvelzen
  • Replace GSON encoding usages with kotlinx.serialization #1975, by @nielsvanvelzen
  • Migrate InfoLayoutHelper to use SDK models #1978, by @nielsvanvelzen
  • Use constants from SDK #1983, by @nielsvanvelzen
  • Always use SDK BaseItemPerson and PersonType #1984, by @nielsvanvelzen
  • Remove unused ApiEventListener from legacy apiclient #1985, by @nielsvanvelzen
  • Always use SDK SearchHint #1986, by @nielsvanvelzen
  • Simplify reportPlaybackStopped code #1993, by @nielsvanvelzen
  • Use SDK SortOrder enum in LibraryPreferences #1994, by @nielsvanvelzen
  • Remove commented log statements #1995, by @nielsvanvelzen
  • Use SDK in StartupActivity #1996, by @nielsvanvelzen
  • Remove USE_DOWNLOAD_API from picture viewer #1999, by @nielsvanvelzen
  • Migrate most of KeyProcessor to SDK types #2002, by @nielsvanvelzen
  • Use SDK in HomeFragment #2013, by @nielsvanvelzen
  • Replace most utils with SDK #2014, by @nielsvanvelzen
  • Rewrite MediaCodecCapabilitiesTest in Kotlin #2015, by @nielsvanvelzen
  • Migrate favorite and played toggles in KeyProcessor to SDK #2016, by @nielsvanvelzen
  • Remove unused video queue code #2021, by @nielsvanvelzen
  • Add empty playback modules for rewrite #2022, by @nielsvanvelzen
  • Rewrite ChapterItemInfo to not use the apiclient #2025, by @nielsvanvelzen
  • Replace BaseItemType usages with BaseItemKind (SDK) #2032, by @nielsvanvelzen
  • Add SocketInstance to dependency injection #2035, by @nielsvanvelzen
  • Rewrite DeviceUtils and Utils in Kotlin #2056, by @nielsvanvelzen
  • Replace BlurHashDecoder with com.vanniktech.blurhash dependency #2069, by @nielsvanvelzen
  • Rewrite data package in Kotlin #2070, by @nielsvanvelzen
  • Rewrite all Java interfaces in Kotlin #2072, by @nielsvanvelzen
  • Use appcompat theme as base #2073, by @nielsvanvelzen
  • Merge StdRowsFragment into HomeFragment #2074, by @nielsvanvelzen
  • Use MutableObjectAdapter<Row> for rows #2075, by @nielsvanvelzen
  • Use MutableObjectAdapter<Object> as base for ItemRowAdapter #2076, by @nielsvanvelzen
  • Rewrite CompositeListeners in Kotlin #2078, by @nielsvanvelzen
  • Rewrite BaseRowItem in Kotlin #2080, by @nielsvanvelzen
  • Migrate a lot of code to use BaseItemDto from SDK #2081, by @nielsvanvelzen
  • Disable jetifier #2090, by @nielsvanvelzen
  • Move package declaration to Gradle build files #2091, by @nielsvanvelzen
  • Use AsyncImageView for Live TV program image #2097, by @nielsvanvelzen
  • Don't use KoinJavaComponent in Kotlin files #2102, by @nielsvanvelzen
  • Remove most deprecation annotations #2104, by @nielsvanvelzen
  • Merge StdBrowseFragment and BrowseFolderFragment and rewrite in Kotlin #2107, by @nielsvanvelzen
  • Always use repeatOnLifecycle instead of launchWhenX functions #2108, by @nielsvanvelzen
  • Rewrite search UI in Kotlin #2110, by @nielsvanvelzen
  • Refactor AudioNowPlayingActivity to fragment #2112, by @nielsvanvelzen
  • Refactor FullDetailsActivity to fragment #2113, by @nielsvanvelzen
  • Refactor ItemListActivity to fragment #2114, by @nielsvanvelzen
  • Refactor LiveTvGuideActivity to fragment #2116, by @nielsvanvelzen
  • Remove key listener from BaseActivity #2117, by @nielsvanvelzen
  • Use fragment arguments instead of activity intent #2124, by @nielsvanvelzen
  • Add CustomMessageRepository, remove BaseActivity #2128, by @nielsvanvelzen
  • Remove GsonJsonSerializer #2145, by @nielsvanvelzen
  • Rewrite MyDetailsOverviewRow in Kotlin #2150, by @nielsvanvelzen
  • Rewrite presenters in Kotlin #2151, by @nielsvanvelzen
  • Replace Response<> usages with LifecycleAwareResponse<> in fragments #2158, by @nielsvanvelzen
  • Rewrite small playback related files in Kotlin #2164, by @nielsvanvelzen
  • Rename xml layout starting with activity_ to fragment_ #2232, by @nielsvanvelzen

💡 Everything else

  • Add (empty) playback module and CODEOWNERS #1072, by @nielsvanvelzen
  • Update playback rewrite build files #1626, by @nielsvanvelzen
  • Forward music play requests to PlaybackLauncher #1937, by @nielsvanvelzen
  • Bump Android compile and target SDK to 32 (Android 12L) #1957, by @nielsvanvelzen
  • Bump Android compile & target version to 33 (Android 13) #2047, by @nielsvanvelzen
  • Switch slf4j timber to a different library #2096, by @nielsvanvelzen
  • Remove direct GSON dependency #2208, by @nielsvanvelzen
  • Add playback rewrite queue system #2209, by @nielsvanvelzen
  • Update Jellyfin SDK to 1.4.0-beta.1 #2234, by @nielsvanvelzen

📈 Dependency updates

  • Update androidx.fragment:fragment-ktx
    • to v1.5.2 #1952, by @renovate[bot]
    • to v1.5.3 #2082, by @renovate[bot]
    • to v1.5.4 #2203, by @renovate[bot]
  • Update kotest
    • to v5.4.2 #1953, by @renovate[bot]
    • to v5.5.0 #2135, by @renovate[bot]
    • to v5.5.1 #2160, by @renovate[bot]
    • to v5.5.2 #2201, by @renovate[bot]
    • to v5.5.3 #2215, by @renovate[bot]
    • to v5.5.4 #2236, by @renovate[bot]
  • Update androidx.appcompat:appcompat
    • to v1.5.0 #1954, by @renovate[bot]
    • to v1.5.1 #2043, by @renovate[bot]
  • Update dependency org.videolan.android:libvlc-all to v3.5.1 #1956, by @renovate[bot]
  • Update org.jetbrains.kotlinx:kotlinx-serialization-json
    • to v1.4.0 #1987, by @renovate[bot]
    • to v1.4.1 #2174, by @renovate[bot]
  • Update github/codeql-action
    • to f5d217b #1988, by @renovate[bot]
    • to 7fee4ca #2005, by @renovate[bot]
    • to c7f292e #2010, by @renovate[bot]
    • to b398f52 #2023, by @renovate[bot]
    • to 6a38b7d #2063, by @renovate[bot]
    • to 904260d #2067, by @renovate[bot]
    • to 86f3159 #2084, by @renovate[bot]
    • to e0e5ded #2123, by @renovate[bot]
    • to 8075783 #2146, by @renovate[bot]
    • to cc7986c #2191, by @renovate[bot]
    • to ec3cf9c #2212, by @renovate[bot]
    • to 18fe527 #2235, by @renovate[bot]
    • to c3b6fce #2242, by @renovate[bot]
  • Update io.mockk:mockk
    • to v1.12.7 #2006, by @renovate[bot]
    • to v1.12.8 #2064, by @renovate[bot]
    • to v1.13.1 #2087, by @renovate[bot]
    • to v1.13.2 #2118, by @renovate[bot]
  • Update dependency com.android.tools:desugar_jdk_libs to v1.1.8 #2008, by @renovate[bot]
  • Update dependency androidx.core:core-ktx to v1.9.0 #2044, by @renovate[bot]
  • Update actions/setup-java
    • to d854b6d #2046, by @renovate[bot]
    • to a18c333 #2109, by @renovate[bot]
    • to de1bb2b #2190, by @renovate[bot]
  • Update koin
    • to v3.2.1 #2050, by @renovate[bot]
    • to v3.2.2 #2089, by @renovate[bot]
    • to v3.2.3 #2192, by @renovate[bot]
    • to v3.3.0 #2206, by @renovate[bot]
  • Update actions/stale
    • to 99b6c70 #2062, by @renovate[bot]
    • to 5ebf00e #2147, by @renovate[bot]
  • Update com.android.tools.build:gradle
    • to v7.3.0 #2065, by @renovate[bot]
    • to v7.3.1 #2168, by @renovate[bot]
  • Update androidx.activity:activity-ktx
    • to v1.6.0 #2083, by @renovate[bot]
    • to v1.6.1 #2202, by @renovate[bot]
  • Update actions/stale action to v6 #2085, by @renovate[bot]
  • Update glide
    • to v4.14.0 #2115, by @renovate[bot]
    • to v4.14.1 #2126, by @renovate[bot]
    • to v4.14.2 #2152, by @renovate[bot]
  • Update Kotlin to v1.7.20 #2119, by @renovate[bot]
  • Update gradle/gradle-build-action
    • to fd32ae9 #2121, by @renovate[bot]
    • to 3fbe033 #2199, by @renovate[bot]
  • Update aboutlibraries
    • to v10.5.0 #2122, by @renovate[bot]
    • to v10.5.1 #2181, by @renovate[bot]
  • Update actions/checkout
    • to 93ea575 #2138, by @renovate[bot]
    • to 2541b12 #2141, by @renovate[bot]
  • Update dependency org.jellyfin.exoplayer:exoplayer-ffmpeg-extension to v2.18.1+2 #2142, by @renovate[bot]
  • Update com.google.devtools.ksp
    • to v1.7.20-1.0.7 #2172, by @renovate[bot]
    • to v1.7.20-1.0.8 #2237, by @renovate[bot]
  • Update actions/upload-artifact digest to 83fd05a #2195, by @renovate[bot]
  • Update io.insert-koin:koin-androidx-compose
    • to v3.2.2 #2198, by @renovate[bot]
    • to v3.3.0 #2204, by @renovate[bot]
  • Update gradle/wrapper-validation-action digest to 55e685c #2205, by @renovate[bot]
  • Update alexellis/upload-assets action to v0.4.0 #2222, by @renovate[bot]
  • Update eps1lon/actions-label-merge-conflict action to v2.1.0 #2231, by @renovate[bot]
  • Update androidx-compose to v1.3.1 #2250, by @renovate[bot]
  • Update dependency com.squareup.leakcanary:leakcanary-android to v2.10 #2251, by @renovate[bot]

Contributors

  • @nielsvanvelzen
  • @renovate[bot]
  • @hadicharara
  • @robertduplock
  • @sparky3387
  • @zkhcohen
  • @kevgrig
  • @mueslimak3r
  • @Andy2244
  • @sunrisela
  • @DenizenB
  • @The-Randalorian