refactor: resync with qbqt baseline and restore genre browser
Some checks failed
Build for Windows / build-windows (push) Has been cancelled

This commit is contained in:
joren
2026-03-30 22:36:39 +02:00
parent 200ef39d04
commit 3346b424b3
26 changed files with 8533 additions and 446 deletions

View File

@@ -51,11 +51,6 @@ void QobuzBackend::search(const QString &query, quint32 offset, quint32 limit)
qobuz_backend_search(m_backend, query.toUtf8().constData(), offset, limit);
}
void QobuzBackend::mostPopularSearch(const QString &query, quint32 limit)
{
qobuz_backend_most_popular_search(m_backend, query.toUtf8().constData(), limit);
}
void QobuzBackend::getAlbum(const QString &albumId)
{
qobuz_backend_get_album(m_backend, albumId.toUtf8().constData());
@@ -84,6 +79,16 @@ void QobuzBackend::getPlaylist(qint64 playlistId, quint32 offset, quint32 limit)
qobuz_backend_get_playlist(m_backend, playlistId, offset, limit);
}
void QobuzBackend::getGenres()
{
qobuz_backend_get_genres(m_backend);
}
void QobuzBackend::getFeaturedAlbums(qint64 genreId, const QString &kind, quint32 limit, quint32 offset)
{
qobuz_backend_get_featured_albums(m_backend, genreId, kind.toUtf8().constData(), limit, offset);
}
// ---- favorites ----
void QobuzBackend::getFavTracks(quint32 offset, quint32 limit)
@@ -222,7 +227,7 @@ void QobuzBackend::onPositionTick()
if (qobuz_backend_take_track_finished(m_backend))
emit trackFinished();
if (qobuz_backend_take_track_transitioned(m_backend))
emit trackTransitioned();
}
@@ -246,9 +251,6 @@ void QobuzBackend::onEvent(int eventType, const QString &json)
case EV_SEARCH_OK:
emit searchResult(obj);
break;
case 26: // EV_MOST_POPULAR_OK
emit mostPopularResult(obj);
break;
case EV_SEARCH_ERR:
emit error(obj["error"].toString());
break;
@@ -272,6 +274,12 @@ void QobuzBackend::onEvent(int eventType, const QString &json)
case 25: // EV_DEEP_SHUFFLE_OK
emit deepShuffleTracksLoaded(obj["tracks"].toArray());
break;
case 27: // EV_GENRES_OK
emit genresLoaded(obj);
break;
case 28: // EV_FEATURED_ALBUMS_OK
emit featuredAlbumsLoaded(obj);
break;
case EV_ARTIST_ERR:
emit error(obj["error"].toString());
break;