diff --git a/tidal_dl_ng/config.py b/tidal_dl_ng/config.py index f41f314..1ba8c8c 100644 --- a/tidal_dl_ng/config.py +++ b/tidal_dl_ng/config.py @@ -224,14 +224,6 @@ class Tidal(BaseConfig, metaclass=SingletonMeta): return True - def validate_session(self) -> bool: - """Validate that the TIDAL session is still authenticated. - - Returns: - bool: True if session is valid, False otherwise. - """ - return self.session.check_login() - def is_authentication_error(self, error: Exception) -> bool: """Check if an error is related to authentication/OAuth issues. diff --git a/tidal_dl_ng/gui.py b/tidal_dl_ng/gui.py index fb8b6c8..14142c1 100644 --- a/tidal_dl_ng/gui.py +++ b/tidal_dl_ng/gui.py @@ -568,8 +568,10 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): # We build the menu. menu = QtWidgets.QMenu() menu.addAction("Download Playlist", lambda: self.thread_download_list_media(point)) + menu.addAction( + "Download All Albums in Playlist", lambda: self.thread_it(self.on_download_all_albums_from_playlist, point) + ) menu.addAction("Copy Share URL", lambda: self.on_copy_url_share(self.tr_lists_user, point)) - menu.addAction("Download All Albums", lambda: self.thread_it(self.on_download_all_albums_from_playlist, point)) menu.exec(self.tr_lists_user.mapToGlobal(point)) @@ -742,7 +744,7 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): time.sleep(delay_sec) # Check session validity before making API calls - if not self.tidal.validate_session(): + if not self.tidal.session.check_login(): logger_gui.error("Session expired. Please restart the application and login again.") return albums_dict diff --git a/tidal_dl_ng/ui/dialog_settings.py b/tidal_dl_ng/ui/dialog_settings.py index 8ab6092..b7ae709 100644 --- a/tidal_dl_ng/ui/dialog_settings.py +++ b/tidal_dl_ng/ui/dialog_settings.py @@ -27,7 +27,7 @@ class Ui_DialogSettings: def setupUi(self, DialogSettings): if not DialogSettings.objectName(): DialogSettings.setObjectName("DialogSettings") - DialogSettings.resize(640, 800) + DialogSettings.resize(640, 832) sizePolicy = QSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding) sizePolicy.setHorizontalStretch(100) sizePolicy.setVerticalStretch(100) @@ -187,20 +187,6 @@ class Ui_DialogSettings: self.horizontalLayout_12.addLayout(self.lv_playlist_create) - self.lv_flag_use_primary_album_artist = QVBoxLayout() - self.lv_flag_use_primary_album_artist.setObjectName("lv_flag_use_primary_album_artist") - self.cb_use_primary_album_artist = QCheckBox(self.gb_flags) - self.cb_use_primary_album_artist.setObjectName("cb_use_primary_album_artist") - - self.lv_flag_use_primary_album_artist.addWidget(self.cb_use_primary_album_artist) - - self.horizontalLayout_12.addLayout(self.lv_flag_use_primary_album_artist) - - self.lv_flags.addLayout(self.horizontalLayout_12) - - self.horizontalLayout_13 = QHBoxLayout() - self.horizontalLayout_13.setObjectName("horizontalLayout_13") - self.lv_mark_explicit = QVBoxLayout() self.lv_mark_explicit.setObjectName("lv_mark_explicit") self.cb_mark_explicit = QCheckBox(self.gb_flags) @@ -208,26 +194,31 @@ class Ui_DialogSettings: self.lv_mark_explicit.addWidget(self.cb_mark_explicit) - self.horizontalLayout_13.addLayout(self.lv_mark_explicit) + self.horizontalLayout_12.addLayout(self.lv_mark_explicit) - self.lv_flags.addLayout(self.horizontalLayout_13) + self.lv_flags.addLayout(self.horizontalLayout_12) - self.lh_flags_atmos = QHBoxLayout() - self.lh_flags_atmos.setObjectName("lh_flags_atmos") - self.lv_flag_download_dolby_atmos = QVBoxLayout() - self.lv_flag_download_dolby_atmos.setObjectName("lv_flag_download_dolby_atmos") + self.horizontalLayout_13 = QHBoxLayout() + self.horizontalLayout_13.setObjectName("horizontalLayout_13") + self.lv_use_primary_album_artist = QVBoxLayout() + self.lv_use_primary_album_artist.setObjectName("lv_use_primary_album_artist") + self.cb_use_primary_album_artist = QCheckBox(self.gb_flags) + self.cb_use_primary_album_artist.setObjectName("cb_use_primary_album_artist") + + self.lv_use_primary_album_artist.addWidget(self.cb_use_primary_album_artist) + + self.horizontalLayout_13.addLayout(self.lv_use_primary_album_artist) + + self.lv_download_dolby_atmos = QVBoxLayout() + self.lv_download_dolby_atmos.setObjectName("lv_download_dolby_atmos") self.cb_download_dolby_atmos = QCheckBox(self.gb_flags) self.cb_download_dolby_atmos.setObjectName("cb_download_dolby_atmos") - self.lv_flag_download_dolby_atmos.addWidget(self.cb_download_dolby_atmos) + self.lv_download_dolby_atmos.addWidget(self.cb_download_dolby_atmos) - self.lh_flags_atmos.addLayout(self.lv_flag_download_dolby_atmos) + self.horizontalLayout_13.addLayout(self.lv_download_dolby_atmos) - self.lv_flag_empty_atmos = QVBoxLayout() - self.lv_flag_empty_atmos.setObjectName("lv_flag_empty_atmos") - self.lh_flags_atmos.addLayout(self.lv_flag_empty_atmos) - - self.lv_flags.addLayout(self.lh_flags_atmos) + self.lv_flags.addLayout(self.horizontalLayout_13) self.lv_main.addWidget(self.gb_flags) @@ -626,7 +617,6 @@ class Ui_DialogSettings: # endif // QT_CONFIG(whatsthis) self.cb_lyrics_embed.setText(QCoreApplication.translate("DialogSettings", "CheckBox", None)) self.cb_lyrics_file.setText(QCoreApplication.translate("DialogSettings", "CheckBox", None)) - self.cb_use_primary_album_artist.setText(QCoreApplication.translate("DialogSettings", "CheckBox", None)) self.cb_download_delay.setText(QCoreApplication.translate("DialogSettings", "CheckBox", None)) self.cb_extract_flac.setText(QCoreApplication.translate("DialogSettings", "CheckBox", None)) self.cb_metadata_cover_embed.setText(QCoreApplication.translate("DialogSettings", "CheckBox", None)) @@ -635,6 +625,8 @@ class Ui_DialogSettings: self.cb_symlink_to_track.setText(QCoreApplication.translate("DialogSettings", "CheckBox", None)) self.cb_playlist_create.setText(QCoreApplication.translate("DialogSettings", "CheckBox", None)) self.cb_mark_explicit.setText(QCoreApplication.translate("DialogSettings", "CheckBox", None)) + self.cb_use_primary_album_artist.setText(QCoreApplication.translate("DialogSettings", "CheckBox", None)) + self.cb_download_dolby_atmos.setText(QCoreApplication.translate("DialogSettings", "CheckBox", None)) self.gb_choices.setTitle(QCoreApplication.translate("DialogSettings", "Choices", None)) self.l_icon_quality_audio.setText(QCoreApplication.translate("DialogSettings", "TextLabel", None)) self.l_quality_audio.setText(QCoreApplication.translate("DialogSettings", "TextLabel", None)) diff --git a/tidal_dl_ng/ui/dialog_settings.ui b/tidal_dl_ng/ui/dialog_settings.ui index 95c6b52..3161095 100644 --- a/tidal_dl_ng/ui/dialog_settings.ui +++ b/tidal_dl_ng/ui/dialog_settings.ui @@ -7,7 +7,7 @@ 0 0 640 - 800 + 832 @@ -262,6 +262,32 @@ + + + + + + + + CheckBox + + + + + + + + + + + CheckBox + + + + + + +