1
1
mirror of https://github.com/KenanZhu/AutoLibrary.git synced 2026-08-02 06:09:36 +08:00

fix(bulletin): 修复托盘消息点击冲突,增加公告入口,移除托盘公告选项

This commit is contained in:
2026-06-26 10:18:15 +08:00
parent 89c1e33257
commit c8f9ae752f
3 changed files with 34 additions and 2 deletions
+13 -2
View File
@@ -65,6 +65,7 @@ class ALMainWindow(MsgBase, QMainWindow, Ui_ALMainWindow):
self._output_queue,
self.__config_paths
)
self.__notification_type = ""
self.setupUi(self)
self.modifyUi()
@@ -137,13 +138,12 @@ class ALMainWindow(MsgBase, QMainWindow, Ui_ALMainWindow):
self.TrayMenu = QMenu()
self.TrayMenu.addAction("显示主窗口", self.showNormal)
self.TrayMenu.addAction("显示定时窗口", self.onTimerTaskManageWidgetButtonClicked)
self.TrayMenu.addAction("公告栏", self.onBulletinActionTriggered)
self.TrayMenu.addAction("最小化到托盘", self.hideToTray)
self.TrayMenu.addSeparator()
self.TrayMenu.addAction("退出", self.close)
self.TrayIcon.setContextMenu(self.TrayMenu)
self.TrayIcon.activated.connect(self.onTrayIconActivated)
self.TrayIcon.messageClicked.connect(self.onBulletinActionTriggered)
self.TrayIcon.messageClicked.connect(self.onTrayMessageClicked)
self.TrayIcon.show()
def hideToTray(
@@ -264,6 +264,7 @@ class ALMainWindow(MsgBase, QMainWindow, Ui_ALMainWindow):
if not hasattr(self, "TrayIcon"):
return
self.__notification_type = "bulletin"
self.TrayIcon.showMessage(
"公告栏 - AutoLibrary",
f"{count} 条新公告,点击查看详情。",
@@ -348,6 +349,15 @@ class ALMainWindow(MsgBase, QMainWindow, Ui_ALMainWindow):
self.setControlButtons(True, None, None)
self._showLog("配置窗口已关闭,配置文件路径已更新")
@Slot()
def onTrayMessageClicked(
self
):
if self.__notification_type == "bulletin":
self.__notification_type = ""
self.onBulletinActionTriggered()
@Slot()
def onBulletinActionTriggered(
self
@@ -370,6 +380,7 @@ class ALMainWindow(MsgBase, QMainWindow, Ui_ALMainWindow):
if self.__ALSettingsWidget is None:
self.__ALSettingsWidget = ALSettingsWidget(self)
self.__ALSettingsWidget.settingsWidgetIsClosed.connect(self.onSettingsWidgetClosed)
self.__ALSettingsWidget.openBulletinRequested.connect(self.onBulletinActionTriggered)
self.__ALSettingsWidget.show()
self.__ALSettingsWidget.raise_()
self.__ALSettingsWidget.activateWindow()