summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Cantara <1975723+joshuacant@users.noreply.github.com>2025-09-01 14:49:24 -0400
committerJoshua Cantara <1975723+joshuacant@users.noreply.github.com>2025-09-01 14:49:24 -0400
commit4c0d78b5edc120f3ff5a651eb1e4700bad9c611c (patch)
tree90eee34e14be0c22af7a4ff38754be6941fdb49c
parent64597bc2f6ffefe2766d1390ab8293123d717fa4 (diff)
downloadtidal-dl-ng-4c0d78b5edc120f3ff5a651eb1e4700bad9c611c.tar.gz
save and restore main window position and size
-rw-r--r--tidal_dl_ng/gui.py15
-rw-r--r--tidal_dl_ng/model/cfg.py4
2 files changed, 18 insertions, 1 deletions
diff --git a/tidal_dl_ng/gui.py b/tidal_dl_ng/gui.py
index e871f3b..2747f83 100644
--- a/tidal_dl_ng/gui.py
+++ b/tidal_dl_ng/gui.py
@@ -151,7 +151,6 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
"""
super().__init__()
self.setupUi(self)
- # self.setGeometry(50, 50, 500, 300)
self.setWindowTitle("TIDAL Downloader Next Generation!")
# Logging redirect.
@@ -160,6 +159,12 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
self.settings = Settings()
+ self.setGeometry(
+ self.settings.data.window_x,
+ self.settings.data.window_y,
+ self.settings.data.window_w,
+ self.settings.data.window_h,
+ )
self._init_threads()
self._init_gui()
self._init_tree_results_model(self.model_tr_results)
@@ -1672,6 +1677,14 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
Args:
event (QtGui.QCloseEvent): The close event.
"""
+
+ # Save the main window size and position
+ self.settings.data.window_x = self.x()
+ self.settings.data.window_y = self.y()
+ self.settings.data.window_w = self.width()
+ self.settings.data.window_h = self.height()
+ self.settings.save()
+
self.shutdown = True
handling_app: HandlingApp = HandlingApp()
diff --git a/tidal_dl_ng/model/cfg.py b/tidal_dl_ng/model/cfg.py
index 438e8dd..7fd3278 100644
--- a/tidal_dl_ng/model/cfg.py
+++ b/tidal_dl_ng/model/cfg.py
@@ -46,6 +46,10 @@ class Settings:
playlist_create: bool = False
metadata_replay_gain: bool = True
metadata_write_url: bool = True
+ window_x: int = 50
+ window_y: int = 50
+ window_w: int = 1200
+ window_h: int = 800
@dataclass_json