- Export import settings by @TheFireCircle in #946
- Pref export/import by @soncaokim in #1051
- Add setting to hide album details on album view by @eliehess in #911
- Translating strings to german by @TheFireCircle in #1103
- Update russian translation by @developersu in #1112
- Fix crasher - when the device just started and the storage/mediastore is not ready by @soncaokim in #1087
- Allow sleep timer to reach 0, resolving issue #1054 by @mfolsom1 in #1102
- @TheFireCircle made their first contribution in #946
- @mfolsom1 made their first contribution in #1102
- @eliehess made their first contribution in #911
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.10.4...1.11.0
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.10.3...1.10.4
- Fix crash on Android 19 with go to artist by @soncaokim in #1060
- CI updates by @soncaokim in #1057
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.10.2...1.10.3
- Fix NPE (if there is no embedded tag) by @soncaokim in #1049
- Reduce crash report spam for exceptions that we cannot resolve by @soncaokim in #1048
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.10.1...1.10.2
- Possible fix for issue #908 (No suitable parent found from the given view) by @soncaokim in #1014
- Fix ANR on app startup if the queue is empty by @soncaokim in #1029
- Fallback to cover image scanned and stored in MediaStore by @soncaokim in #1022
- Fix NPE (Attempt to invoke interface method 'java.util.Set java.util.Map.entrySet()' on a null object reference) by @soncaokim in #1045
- Fix NPE (the result object can indeed be null) by @soncaokim in #1046
- Rollback unwanted crowdin integration by @soncaokim in #1015
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.10.0...1.10.1
- Keep the queue in sync with changes from MediaStore (removal, update) by @soncaokim in #969
- Fix regression on discography (album) introduced by #992 (multi-artist-navigation) by @soncaokim in #1007
- Fix crash described by #1008 by @soncaokim in #1009
- Fix issue #974 by @soncaokim in #1010
- Snackbar tweaks by @soncaokim in #991
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.9.0...1.10.0
- Multi artists navigation by @soncaokim in #992
- Improve unknown artist/album/genre/song title display by @soncaokim in #994
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.8.4...1.9.0
- Hotfix for regression introduced by PR #989 by @soncaokim in #996
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.8.3...1.8.4
- Refactor multi select by @soncaokim in #958
- Dont collect the stack trace if the underlying library cannot read the media file by @soncaokim in #989
- End the DB transaction properly (in case of failure) by @soncaokim in #990
- Clean obsolete DB columns by @soncaokim in #993
- feat(translations): add Dutch translation by @AnonymousWP in #986
- Apply build pipeline on PR as well by @soncaokim in #987
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.8.2...1.8.3
- Monochrome icon by @ByteHamster in #971
- Fix crash on init with API 19 by @soncaokim in #982
- Resolve "Android 8: Unnecessary "Vinyl is running" notification #952" by @AutomaticUpdates in #978
- @ByteHamster made their first contribution in #971
- @AutomaticUpdates made their first contribution in #978
- @AnonymousWP made their first contribution in #977
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.8.1...1.8.2
- Fix save playlist android9 by @soncaokim in #944
- Fix dangling unknown artist by @soncaokim in #956
- Fix crash on select dupe song in playlist by @soncaokim in #950
- Fix stale notification by @soncaokim in #961
- Silence logcat warning about deprecated use of stream type by @soncaokim in #963
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.8.0...1.8.1
- Refactor {card|flat} fragments, move common code to base class and fix NPE by @soncaokim in #926
- Avoid NPE (related to #931 by @soncaokim in #932
- Allow tag editor to function on API 30+ by @gaycodegal in #929
- Fix multi genres by @soncaokim in #939
- Fix NPE (on getSongsForGenre) by @soncaokim in #933
- Upgrade Github Actions plugins by @soncaokim in #934
- @drizzt made their first contribution in #896
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.7.0...1.8.0
- Add context menu to genre activity by @gaycodegal in #907
- Not recently played/Last added - group by album by @soncaokim in #752
- add multi-line genre editing by @gaycodegal in #928 and in #904
- fixes #853, the system UI notification crash by @ellisonch in #902
- Fixes #855 by @soncaokim in #925
- Blacklist error on android 12 by @soncaokim in #924
- Report original filename with error by @soncaokim in #923
- @ellisonch made their first contribution in #902
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.6.3...1.7.0
- Updated German translations by @tschlegeldigos in #897
- Remove unused strings by @soncaokim in #900
- Tools upgrade by @soncaokim in #887
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.6.2...1.6.3
- Fix compatibility with Poweramp by @MageFroh in #875
- Upgrade dependencies and gradle by @soncaokim in #867
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.6.1...1.6.2
- Avoid copying an audio file to read its tags as much as possible by @MageFroh in #856
- Oops handler v2 by @soncaokim in #860
- Correct and update russian translation by @developersu in #861
- Revert non-intended change by @soncaokim in #865
- Oops, disable oops_handler by default by @soncaokim in #868
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.6.0...1.6.1
- Use DynamicsProcessing to apply positive replay gains in a robust way by @MageFroh in #828
- Add settings to opt-in for crash report by @soncaokim in #857
- Fix NPE by @soncaokim in #843
- Fix race cond - 2 by @soncaokim in #842
- Fix equalizer settings being marked unavailable in the settings by @MageFroh in #840
- Update russian translation by @developersu in #850
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.5.6...1.6.0
- App context fixes by @soncaokim in #830
- Restore cover art loading for songs in the Folder view by @soncaokim in #832
- Thread safe toast by @soncaokim in #834
- Fix race condition by @soncaokim in #824
- Android auto fixes by @soncaokim in #829
- Clean up Android API compat by @soncaokim in #833
- Further fix for #707 by @soncaokim in #838
- Support SD card by @krebsd and @soncaokim in #825
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.5.5...1.5.6
- Dont crash if OopsHandler is called from a background (non-UI) thread by @soncaokim in #808
- Fix repeat setting not being restored by @toolstack in #811
- Attempt to fix #707 by @soncaokim in #821
- Refrain from rushing out a new release on every new tag by @soncaokim in #820
- @toolstack made their first contribution in #811
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.5.4...1.5.5
None, this is a bug fix release
- Fix crash by @soncaokim in #766
- Fix crashes that occur when the user has a widget set up by @Darandos in #786
- Fix exception report spam on unsupported file type by @soncaokim in #795
- Fix permission request music folder crash by @soncaokim in #793
- Fix Folder view, where files with non-latin characters not showing by @soncaokim in #796
- Tools update by @soncaokim in #763
- feat(ci): Setup PlayStore build by @AdrienPoupa in #783
- Fix local build by @soncaokim in #791
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.5.3-test-ci.3...1.5.4
- Major change to support Android 13, by @soncaokim and @Octoton
- Catalan translation updated by @albertgasset
- German translation updated by @tschlegeldigos
- Fix orientation bug by @Osiris-Team
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.5.2...1.5.3-test-ci.3
This version is the same as 1.5.1, but with correct versioning number.
- Catalan translation updated by @albertgasset in #709
- Use MarkdownViewDialog to improve visualising LastFM artist bio and album wiki by @soncaokim in #703
- Enqueue song action can now be choosen in preference by @Octoton in #715
- Misc changes for artist cover image by @soncaokim in #697
- Fix snackbar unreadable text by @soncaokim in #706
- Avoid crash while loading top tracks by @soncaokim in #728
- Cab icon tint by @soncaokim in #726
- Play next color by @Octoton in #723
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.5.0...1.5.1
- Make song detail info selectable and copyable by @soncaokim in #645
- Folders view sort options by @soncaokim in #657
- Queue change confirmation by @soncaokim in #658
- Make the drawer and now playing screen shadow over the cover image darker (improve for white/bright cover image) by @soncaokim in #664
- Cleaner markdown visualisation by @Octoton in #684
- Tag editor: Use darker shadow for toolbar to improve button visibility on white cover art by @soncaokim in #682
- Visual song action by @Octoton in #679
- Fix start service crash by @soncaokim in #644
- Fix bug in StaticQueue implementation by @soncaokim in #651
- Fix NPE on Discog by @soncaokim in #656
- Fix crash unfavorite songs by @soncaokim in #666
- Broader exception catch on restoring saved queue by @soncaokim in #669
- Fix artist sorting by @soncaokim in #686
- The back navigation button on the bug report screen was not responding by @soncaokim in #687
- Refactor Skipped songs implementation by @soncaokim in #672
- Oops handler by @soncaokim in #646
- Tag editor trim spaces by @soncaokim in #647
- Upgrade jaudiotagger + java by @soncaokim in #648
- Upgrade MaterialCab by @soncaokim in #649
- New About dialog by @soncaokim in #660
- Missing french translation by @Octoton in #678
- Refactor Licenses dialog by @soncaokim in #680
Full Changelog: https://github.com/VinylMusicPlayer/VinylMusicPlayer/compare/1.4.1...1.5.0
- Feat: Ignore "the" and "a" prefixes when sorting artists by @louis-prudhomme in #630
- Fix a crash due to #620 by @gaycodegal in #639
- Sort orders by @soncaokim in #467
- Fast scroll popup: Show relative date for recent ones by @soncaokim in #494
- When parsing release year from metadata, only consider the first
yyyy
part by @soncaokim in #491 - Fixed Image Flicker on notifyDataSetChanged() by @prathameshmm02 in #508
- tweak song sorting for Song and Genre tabs by @soncaokim in #506
- Disc number fallback by @soncaokim in #498
- Better menuItem visual queue for delete action by @Octoton in #520
- Set imageText visibility to INVISIBLE from GONE to allow reordering current song in queue by @bertin0 in #523
- Adding missing red menu item delete in all multiselecion menu by @Octoton in #532
- add darkmode to BaseAppWidget by @newhinton in #522
- Most album covers are square, not rectangle -> show as square on the nav drawer by @soncaokim in #546
- More info in the song's Details dialog by @soncaokim in #561
- Fix Black (OLED) theme to actually be black. by @Sai-P in #588
- Add search for genre and playlist, by @gaycodegal in #619
- Update Italian translation by @auanasgheps in #476
- Brazilian Portuguese translation updated by @DeltaInsight in #475
- Catalan translation updated by @albertgasset in #471
- Update italian translation by @auanasgheps in #477
- Fix italian build error by @soncaokim in #478
- Updated Brazilian Portuguese translation by @DeltaInsight in #488
- Catalan translation updated by @albertgasset in #496
- Fixed or added German translations by @tschlegeldigos in #499
- Update Korean translation by @yurical in #505
- Unified period usage in settings by @tschlegeldigos in #510
- English traduction for CA and GB removal by @Octoton in #519
- Fixed some German translations by @tschlegeldigos in #507
- Update French translation by @GladiusTM in #538
- Updated Brazilian Portuguese translation by @DeltaInsight in #601
- Fix NPE on artist name splitting by @soncaokim in #474
- Fix crash on tapping/dragging the very fist item of the orderable playlist by @soncaokim in #486
- Prevent repeating last track when gapless is enabled (fixes #435) by @albertgasset in #495
- Fix crash if the songs/albums collection is empty by @soncaokim in #497
- Fixes #431 by @soncaokim in #550
- Fix Android Auto regression by @soncaokim in #551
- Fix crash on restoring queue after song removal by @soncaokim in #547
- Resolve IMMUTABLE crash on android 12 following a change in android specification by @Octoton in #549
- Fix crash launching from Google Assistant by @soncaokim in #567
- Queue restore crash by @soncaokim in #570
- Use song title to stabilize the sorting if disc+track are equals or missing by @soncaokim in #583
- Fix data race by @soncaokim in #610
- Fix crash by by @poolborges in #617
- Lint by @soncaokim in #426
- Flush the Discog task queue on stop by @soncaokim in #470
- Playing hide and seek with jaudiotagger - contain the VerifyError with FLAC by @soncaokim in #487
- Add missing null check by @soncaokim in #481
- Lint by @soncaokim in #473
- Align to recent strings rename by @soncaokim in #493
- Spitting playingQueue from musicservice by @Octoton in #509
- Drop ComparatorUtil.compareLongInts... by @soncaokim in #558
- Tweak text transparency to improve readability by @soncaokim in #559
- Tweak navbar album cover text transparency by @soncaokim in #560
- Stick to API 29, avoid regression in song deletion by @soncaokim in #552
- Upgrade gradle by @soncaokim in #578
- Upgrade to new CircleCI image by @soncaokim in #585
- Update build to large resource class in config.yml by @soncaokim in #612
- Whitelist
- Switch theme based on OS setting
- Ability to fast forward miss in fragment flat and rewind by holding next and previous song buttons
- "Shuffle All" button will now start a new playback
- Crash when reading MP3 tags on Nougat
- Add "delete from device" choice menu in playlist view (both dumb and smart ones)
- ID3v1 tag support
- Added fast forward and rewind by holding next and previous song buttons
- Optimized library rescan and startup
- Fixed Replay Gain not applied if gapless is enabled
- Fixed sleep timer not applied if gapless enabled
- Fixed Notification progress slider
- Updated Android Auto UI
- Skip to the next track when the currently playing one has an error
- Smart Playlists: lots of improvements
- "Delete from device" choice menu in playlist view (both dumb and smart ones)
- Auto queue stuck
- Finish Last Song checkbox position on sleep timer
- When a song is added to queue, discard existing position (i.e. move the existing song in queue)
- Merged album with same name/same artist
- Android Auto mode
- Changelog popup not showing
- Reduced overhead on the main thread during scan
- Support for multiple artists per track
- Extract album artist from ID3 tags and use that for album grouping/sorting
- Given a song with album artist A and artist "A & B", only "A & B" is shown on artist tab.
- Show album artist on top of album detail page if there is one, else fallback to first song's artist
- Multi-disc track sorting
- Support ReplayGain in MP4 files
- Unknown artist is shown as empty on artist tab
- Performance optimization
- Remove songs from detail activities after they are deleted
- Fix sort order
- Fix a crash after extended sleep
- Fix crash due to iterating on a modified collection
- Fix crash when a song is removed from queue
- Library handling with a local database, circumventing the MediaStore
- Setting to show/hide track number
- White line around app icon
- Playlist bug on Android 10
- Filename not showing for songs without tags
- Compatible with Android 11
- Fix ringtone sharing
- Detect and avoid fetching deezer place holder image
- Fix scanning large folders
- Fix the ellipsize bug
- Fix long-pressing on title starting playback
- Fix default album cover is not consistent
- Made Vinyl resizable
- Release typo
- Updated Kotlin, organize dependencies
- Removed dependency on legacy preferences and fragments
- Updated German translation
- Animated playing indicator icon
- Crash while scrolling on artist list
- Playing a folder results in unexpected sorting of all songs from subfolders
- Album tag editor deleting 'artist' tag if 'album artist' is empty
- Playing wrong song when restoring to play queue
- Next track not playing when gapless playback is enabled
- Splash screen
- Play queue progress
- Favorite button to notifications
- Highlight current song
- Null exception
- ANR
- Allow only one task at a time
- Artist and Album cover not loading (LastFM API replaced by Deezer's)
- Songs not playing in the folder view
- Crash during first launch
- Experimental Android Auto support
- Continue playing on song removal
- Songs not playing after a tap on the title
- Transparent widget losing its transparency randomly
- Place the not played tracks first in the not recently played list
- Titles not showing for Android 6 and below
- Bump database version
- Songs and Albums: sort by date added
- Put song title text view into a horizontal scrollview
- Swipe to remove song from playing queue
- SD card write access using SAF API
- Set the top tracks number to 100
- Shorter labels for launcher name
- Fix transparent widget update
- Improve ReplayGain
- Crash when tapping on "Library Categories" setting
- Introduction crashing on some devices
- Add a new smart playlist "Not played lately" playlist
- Add choice of 7 days to settings for dynamic playlists
- Smart playlist decoration
- Finish current music when Sleep Timer stops
- Disable clear menu item on NotRecentlyPlayed
- App dies on rotate
- Audio cover fallback list to include "folder.png"
- ReplayGain feature. This is still considered experimental at this point. Thanks to @knacky34!
- Add a transparent widget.
- Preference to turn off shuffle mode when selecting new list of songs.
- Select all items in a list.
- Export multiple playlists at once.
- Show unknown year consistently everywhere.
- Also look for png album covers in the folder.
- Show "-" instead of "0" when the album year is not available.
- Show "Unknown Artist" when the artist name is unknown.
- Navigation bar button colors for light themes.
- Crash with custom artist images.
- App intro crash.
- Crash for some artist names which contain special characters.
- Loading of very large embedded album art.
- Broken layout for super long artist names.
- Album redesign thanks to Adrian (that's not me! :-)).
- New "Scan" option thanks to @kabouzeid.
- Sorting feature thanks to @soren121.
- Upgrade to Glide 4.
- Hide the tab bar when only one tab is activated.
- Initial version.