diff --git a/src/tangara/database/database.cpp b/src/tangara/database/database.cpp index adad74be..f939725a 100644 --- a/src/tangara/database/database.cpp +++ b/src/tangara/database/database.cpp @@ -293,7 +293,7 @@ auto Database::getIndexes() -> std::vector { // TODO(jacqueline): This probably needs to be async? When we have runtime // configurable indexes, they will need to come from somewhere. return { - kAllTracks, kAllAlbums, kAlbumsByArtist, kTracksByGenre, kPodcasts, + kAllTracks, kAllAlbums, kAlbumsByArtist, kTracksByGenre, kPodcasts, kAudiobooks }; } diff --git a/src/tangara/database/index.cpp b/src/tangara/database/index.cpp index 23d5e04b..0ced27ed 100644 --- a/src/tangara/database/index.cpp +++ b/src/tangara/database/index.cpp @@ -63,6 +63,13 @@ const IndexInfo kPodcasts{ .components = {Tag::kTitle}, }; +const IndexInfo kAudiobooks{ + .id = 6, + .type = MediaType::kAudiobook, + .name = "Audiobooks", + .components = {Tag::kAlbum, Tag::kAlbumOrder}, +}; + static auto titleOrFilename(const TrackData& data, const TrackTags& tags) -> std::pmr::string { auto title = tags.title(); diff --git a/src/tangara/database/index.hpp b/src/tangara/database/index.hpp index d1c10a36..e1c6283a 100644 --- a/src/tangara/database/index.hpp +++ b/src/tangara/database/index.hpp @@ -79,5 +79,6 @@ extern const IndexInfo kTracksByGenre; extern const IndexInfo kAllTracks; extern const IndexInfo kAllAlbums; extern const IndexInfo kPodcasts; +extern const IndexInfo kAudiobooks; } // namespace database