added to the tray show/hide

This commit is contained in:
Sergey Palcheh
2025-09-29 11:33:23 +06:00
parent 553d427d66
commit 3527846c6c

View File

@@ -1664,6 +1664,11 @@ class WineHelperGUI(QMainWindow):
# Создаем и сохраняем меню как атрибут класса, чтобы оно не удалялось # Создаем и сохраняем меню как атрибут класса, чтобы оно не удалялось
self.tray_menu = QMenu(self) self.tray_menu = QMenu(self)
toggle_visibility_action = self.tray_menu.addAction("Показать/Скрыть")
toggle_visibility_action.triggered.connect(self.toggle_visibility)
self.tray_menu.addSeparator()
quit_action = self.tray_menu.addAction("Выход") quit_action = self.tray_menu.addAction("Выход")
quit_action.triggered.connect(self.quit_application) quit_action.triggered.connect(self.quit_application)
@@ -1679,7 +1684,13 @@ class WineHelperGUI(QMainWindow):
def toggle_visibility(self): def toggle_visibility(self):
"""Переключает видимость главного окна.""" """Переключает видимость главного окна."""
self.setVisible(not self.isVisible()) if self.isVisible() and self.isActiveWindow():
self.hide()
else:
# Сначала скрываем, чтобы "сбросить" состояние, затем активируем.
# Это помогает обойти проблемы с фокусом и переключением рабочих столов.
self.hide()
self.activate()
def add_tab(self, widget, title): def add_tab(self, widget, title):
"""Добавляет вкладку в кастомный TabBar и страницу в StackedWidget.""" """Добавляет вкладку в кастомный TabBar и страницу в StackedWidget."""