diff --git a/fulltabwidget.py b/fulltabwidget.py index 1eb4a9d..af1cd04 100644 --- a/fulltabwidget.py +++ b/fulltabwidget.py @@ -20,13 +20,15 @@ class FullTabWidget(QWidget): splitter = QSplitter() splitter.setOrientation(Qt.Orientation.Vertical) splitter.setHandleWidth(5) - #splitter.setStyleSheet("QSplitter::handle{background: #cccccc;}") + # splitter.setStyleSheet("QSplitter::handle{background: #cccccc;}") splitter.addWidget(self.file_view) splitter.addWidget(self.filter_hit_view) self.layout.addWidget(splitter) + def get_file(self) -> str: + self.file_view.get_file() def destruct(self): self.file_view.destruct() - self.filter_hit_view.destruct() \ No newline at end of file + self.filter_hit_view.destruct() diff --git a/main.py b/main.py index cbe896b..00d6fc0 100644 --- a/main.py +++ b/main.py @@ -1,4 +1,5 @@ import logging +import os import signal from PyQt6 import QtCore @@ -86,6 +87,18 @@ class MainWindow(QMainWindow): dialog = QFileDialog(self) (selected_file, _filter) = dialog.getOpenFileName(caption=self.tr("Open File")) self.tabs.create_tab(selected_file) + self._remember_recent_file(selected_file) + + def _remember_recent_file(self, file: str): + recent_files = self.settings.session.get('general', 'recent_files', fallback='') + files = recent_files.split(os.pathsep) + if file in files: + files.remove(file) + if "" in files: + files.remove("") + files.insert(0, file) + recent_files = os.pathsep.join(files[:5]) + self.settings.set_session('general', 'recent_files', recent_files) def closeEvent(self, event): self.destruct()