summaryrefslogtreecommitdiff
path: root/tidal_dl_ng/gui/main_window.py
diff options
context:
space:
mode:
authorWarry <FunWarry@users.noreply.github.com>2025-12-29 17:37:39 +0100
committerWarry <FunWarry@users.noreply.github.com>2025-12-29 17:37:39 +0100
commit296c6c7d6b319b38958b2aacb9904f18f6f46fd1 (patch)
treea3e72a9326defee5804cc9387ecee779b9bf02a2 /tidal_dl_ng/gui/main_window.py
parent75868b32d07aafe46b69649d2da0dc2c833f112d (diff)
downloadtidal-dl-ng-296c6c7d6b319b38958b2aacb9904f18f6f46fd1.tar.gz
feat: Add playlist management functionality and compliance checks
- Introduced a new "Playlists" column in results view with visual indicators for membership. - Added `playlist_api.py` to handle playlist-related operations (fetch, add, remove tracks). - Implemented `PlaylistManagerDialog` for seamless playlist addition/removal with caching. - Integrated compliance check script (`check_agents_compliance.py`) for ensuring coding standards. - Added extensive documentation (`playlist_membership_manager.md`) covering architecture and flow. - Updated GUI logic and QStandardItemModel setup to include playlist data. - Included unit tests for playlist management components and API.
Diffstat (limited to 'tidal_dl_ng/gui/main_window.py')
-rw-r--r--tidal_dl_ng/gui/main_window.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/tidal_dl_ng/gui/main_window.py b/tidal_dl_ng/gui/main_window.py
index 33806dc..1ec4fa0 100644
--- a/tidal_dl_ng/gui/main_window.py
+++ b/tidal_dl_ng/gui/main_window.py
@@ -19,6 +19,7 @@ from tidal_dl_ng.gui.downloads import DownloadsMixin
from tidal_dl_ng.gui.history import HistoryMixin
from tidal_dl_ng.gui.initialization import InitializationMixin
from tidal_dl_ng.gui.playlist import GuiPlaylistManager
+from tidal_dl_ng.gui.playlist_membership_mixin import PlaylistMembershipMixin
from tidal_dl_ng.gui.progress import ProgressMixin
from tidal_dl_ng.gui.queue import GuiQueueManager
from tidal_dl_ng.gui.search import GuiSearchManager
@@ -52,6 +53,7 @@ class MainWindow(
TreesResultsMixin,
ContextMenusMixin,
HistoryMixin,
+ PlaylistMembershipMixin,
):
"""Main application window for TIDAL Downloader Next Generation.
@@ -169,7 +171,7 @@ class MainWindow(
self.init_tidal(tidal)
- logger_gui.debug("All setup.")
+ logger_gui.info("All setup.")
def closeEvent(self, event: QtGui.QCloseEvent) -> None:
"""Handle the close event of the main window.
@@ -177,6 +179,12 @@ class MainWindow(
Args:
event (QtGui.QCloseEvent): The close event.
"""
+ logger_gui.warning("⚠️ CLOSE EVENT TRIGGERED!")
+ import traceback
+
+ logger_gui.debug("Close event traceback:")
+ for line in traceback.format_stack():
+ logger_gui.debug(line.strip())
# Save the main window size and position
self.settings.data.window_x = self.x()
self.settings.data.window_y = self.y()