Use common classes for Tidal and Deezer
This commit is contained in:
@@ -31,6 +31,7 @@
|
||||
#include "core/closure.h"
|
||||
#include "core/lazy.h"
|
||||
#include "core/tagreaderclient.h"
|
||||
#include "core/song.h"
|
||||
|
||||
#include "database.h"
|
||||
#include "taskmanager.h"
|
||||
@@ -59,8 +60,7 @@
|
||||
#include "lyrics/apiseedslyricsprovider.h"
|
||||
|
||||
#include "internet/internetmodel.h"
|
||||
#include "tidal/tidalsearch.h"
|
||||
#include "deezer/deezersearch.h"
|
||||
#include "internet/internetsearch.h"
|
||||
|
||||
bool Application::kIsPortable = false;
|
||||
|
||||
@@ -116,8 +116,8 @@ class ApplicationImpl {
|
||||
return lyrics_providers;
|
||||
}),
|
||||
internet_model_([=]() { return new InternetModel(app, app); }),
|
||||
tidal_search_([=]() { return new TidalSearch(app, app); }),
|
||||
deezer_search_([=]() { return new DeezerSearch(app, app); })
|
||||
tidal_search_([=]() { return new InternetSearch(app, Song::Source_Tidal, app); }),
|
||||
deezer_search_([=]() { return new InternetSearch(app, Song::Source_Deezer, app); })
|
||||
{}
|
||||
|
||||
Lazy<TagReaderClient> tag_reader_client_;
|
||||
@@ -137,8 +137,8 @@ class ApplicationImpl {
|
||||
Lazy<CurrentArtLoader> current_art_loader_;
|
||||
Lazy<LyricsProviders> lyrics_providers_;
|
||||
Lazy<InternetModel> internet_model_;
|
||||
Lazy<TidalSearch> tidal_search_;
|
||||
Lazy<DeezerSearch> deezer_search_;
|
||||
Lazy<InternetSearch> tidal_search_;
|
||||
Lazy<InternetSearch> deezer_search_;
|
||||
|
||||
};
|
||||
|
||||
@@ -206,5 +206,5 @@ LyricsProviders *Application::lyrics_providers() const { return p_->lyrics_provi
|
||||
PlaylistBackend *Application::playlist_backend() const { return p_->playlist_backend_.get(); }
|
||||
PlaylistManager *Application::playlist_manager() const { return p_->playlist_manager_.get(); }
|
||||
InternetModel *Application::internet_model() const { return p_->internet_model_.get(); }
|
||||
TidalSearch *Application::tidal_search() const { return p_->tidal_search_.get(); }
|
||||
DeezerSearch *Application::deezer_search() const { return p_->deezer_search_.get(); }
|
||||
InternetSearch *Application::tidal_search() const { return p_->tidal_search_.get(); }
|
||||
InternetSearch *Application::deezer_search() const { return p_->deezer_search_.get(); }
|
||||
|
||||
@@ -53,8 +53,7 @@ class AlbumCoverLoader;
|
||||
class CurrentArtLoader;
|
||||
class LyricsProviders;
|
||||
class InternetModel;
|
||||
class TidalSearch;
|
||||
class DeezerSearch;
|
||||
class InternetSearch;
|
||||
|
||||
class Application : public QObject {
|
||||
Q_OBJECT
|
||||
@@ -89,8 +88,8 @@ class Application : public QObject {
|
||||
LyricsProviders *lyrics_providers() const;
|
||||
|
||||
InternetModel *internet_model() const;
|
||||
TidalSearch *tidal_search() const;
|
||||
DeezerSearch *deezer_search() const;
|
||||
InternetSearch *tidal_search() const;
|
||||
InternetSearch *deezer_search() const;
|
||||
|
||||
void MoveToNewThread(QObject *object);
|
||||
void MoveToThread(QObject *object, QThread *thread);
|
||||
|
||||
@@ -129,16 +129,16 @@
|
||||
# include "device/deviceviewcontainer.h"
|
||||
#endif
|
||||
#include "transcoder/transcodedialog.h"
|
||||
#include "settings/settingsdialog.h"
|
||||
#include "settings/behavioursettingspage.h"
|
||||
#include "settings/playbacksettingspage.h"
|
||||
#include "settings/playlistsettingspage.h"
|
||||
#include "settings/settingsdialog.h"
|
||||
#include "settings/tidalsettingspage.h"
|
||||
#include "settings/deezersettingspage.h"
|
||||
|
||||
#include "internet/internetmodel.h"
|
||||
#include "internet/internetservice.h"
|
||||
|
||||
#include "tidal/tidalsearchview.h"
|
||||
#include "deezer/deezersearchview.h"
|
||||
#include "internet/internetsearchview.h"
|
||||
|
||||
#if defined(HAVE_GSTREAMER) && defined(HAVE_CHROMAPRINT)
|
||||
# include "musicbrainz/tagfetcher.h"
|
||||
@@ -203,8 +203,8 @@ MainWindow::MainWindow(Application *app, SystemTrayIcon *tray_icon, OSD *osd, co
|
||||
manager->SetPlaylistManager(app->playlist_manager());
|
||||
return manager;
|
||||
}),
|
||||
tidal_search_view_(new TidalSearchView(app_, this)),
|
||||
deezer_search_view_(new DeezerSearchView(app_, this)),
|
||||
tidal_search_view_(new InternetSearchView(app_, app_->tidal_search(), TidalSettingsPage::kSettingsGroup, SettingsDialog::Page_Tidal, this)),
|
||||
deezer_search_view_(new InternetSearchView(app_, app_->deezer_search(), DeezerSettingsPage::kSettingsGroup, SettingsDialog::Page_Deezer, this)),
|
||||
playlist_menu_(new QMenu(this)),
|
||||
playlist_add_to_another_(nullptr),
|
||||
playlistitem_actions_separator_(nullptr),
|
||||
|
||||
@@ -88,8 +88,7 @@ class TranscodeDialog;
|
||||
#endif
|
||||
class Ui_MainWindow;
|
||||
class Windows7ThumbBar;
|
||||
class TidalSearchView;
|
||||
class DeezerSearchView;
|
||||
class InternetSearchView;
|
||||
|
||||
class MainWindow : public QMainWindow, public PlatformInterface {
|
||||
Q_OBJECT
|
||||
@@ -337,8 +336,8 @@ signals:
|
||||
PlaylistItemList autocomplete_tag_items_;
|
||||
#endif
|
||||
|
||||
TidalSearchView *tidal_search_view_;
|
||||
DeezerSearchView *deezer_search_view_;
|
||||
InternetSearchView *tidal_search_view_;
|
||||
InternetSearchView *deezer_search_view_;
|
||||
|
||||
QAction *collection_show_all_;
|
||||
QAction *collection_show_duplicates_;
|
||||
|
||||
@@ -60,8 +60,7 @@
|
||||
# include "dbus/metatypes.h"
|
||||
#endif
|
||||
|
||||
#include "tidal/tidalsearch.h"
|
||||
#include "deezer/deezersearch.h"
|
||||
#include "internet/internetsearch.h"
|
||||
|
||||
void RegisterMetaTypes() {
|
||||
|
||||
@@ -116,10 +115,7 @@ void RegisterMetaTypes() {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
qRegisterMetaType<TidalSearch::ResultList>("TidalSearch::ResultList");
|
||||
qRegisterMetaType<TidalSearch::Result>("TidalSearch::Result");
|
||||
|
||||
qRegisterMetaType<DeezerSearch::ResultList>("DeezerSearch::ResultList");
|
||||
qRegisterMetaType<DeezerSearch::Result>("DeezerSearch::Result");
|
||||
qRegisterMetaType<InternetSearch::ResultList>("InternetSearch::ResultList");
|
||||
qRegisterMetaType<InternetSearch::Result>("InternetSearch::Result");
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user