From dd3123a38e1e044a4eba052fad8b89a5900dc6f5 Mon Sep 17 00:00:00 2001 From: "N0\\A" Date: Tue, 21 Oct 2025 17:21:38 +0200 Subject: [PATCH] always-on-top --- ui/gui.py | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/ui/gui.py b/ui/gui.py index 3c67473..f485c2f 100755 --- a/ui/gui.py +++ b/ui/gui.py @@ -121,6 +121,23 @@ class MainWindow(QtWidgets.QMainWindow): self._drag_pos = None + # Timer to ensure window stays on top + self.stay_on_top_timer = QtCore.QTimer(self) + self.stay_on_top_timer.timeout.connect(self.ensure_on_top) + self.stay_on_top_timer.start(1000) + + def ensure_on_top(self): + """Periodically ensure the window stays on top""" + if self.isVisible(): + self.raise_() + self.activateWindow() + + def showEvent(self, event): + """Ensure window is on top when shown""" + super().showEvent(event) + self.raise_() + self.activateWindow() + def ask_about_screen(self): if self.thread and self.thread.isRunning(): return @@ -188,6 +205,7 @@ class MainWindow(QtWidgets.QMainWindow): def mouseReleaseEvent(self, event: QtGui.QMouseEvent): self._drag_pos = None + self.raise_() def toggle_visible(self): self.setVisible(not self.isVisible()) @@ -205,4 +223,4 @@ def main(): sys.exit(app.exec()) if __name__ == "__main__": - main() + main() \ No newline at end of file