restructure new_message_callback
This commit is contained in:
@@ -120,24 +120,29 @@ class MainApplication(QtWidgets.QApplication):
|
|||||||
self.gotify_client.reconnect(increase_wait_time=False)
|
self.gotify_client.reconnect(increase_wait_time=False)
|
||||||
|
|
||||||
def new_message_callback(self, message: gotify.GotifyMessageModel):
|
def new_message_callback(self, message: gotify.GotifyMessageModel):
|
||||||
# Show a notification
|
if message.priority < settings.value("tray/notifications/priority", type=int):
|
||||||
if not (application_item := self.application_model.itemFromId(message.appid)):
|
|
||||||
logger.error(
|
|
||||||
f"MainWindow.new_message_callback: App id {message.appid} could not be found. Refreshing applications."
|
|
||||||
)
|
|
||||||
self.refresh_applications()
|
|
||||||
return
|
return
|
||||||
|
|
||||||
if message.priority >= settings.value("tray/notifications/priority", type=int):
|
if settings.value("tray/notifications/icon/show", type=bool):
|
||||||
image_url = f"{self.gotify_client.url}/{application_item.data(ApplicationItemDataRole.ApplicationRole).image}"
|
if application_item := self.application_model.itemFromId(message.appid):
|
||||||
self.tray.showMessage(
|
image_url = f"{self.gotify_client.url}/{application_item.data(ApplicationItemDataRole.ApplicationRole).image}"
|
||||||
message.title,
|
icon = QtGui.QIcon(downloader.get_filename(image_url))
|
||||||
message.message,
|
else:
|
||||||
QtGui.QIcon(downloader.get_filename(image_url))
|
logger.error(
|
||||||
if settings.value("tray/notifications/icon/show", type=bool)
|
f"MainWindow.new_message_callback: App id {message.appid} could not be found. Refreshing applications."
|
||||||
else QtWidgets.QSystemTrayIcon.MessageIcon.Information,
|
)
|
||||||
msecs=settings.value("tray/notifications/duration_ms", type=int),
|
self.refresh_applications()
|
||||||
)
|
icon = QtWidgets.QSystemTrayIcon.MessageIcon.Information
|
||||||
|
else:
|
||||||
|
icon = QtWidgets.QSystemTrayIcon.MessageIcon.Information
|
||||||
|
|
||||||
|
# Show a notification
|
||||||
|
self.tray.showMessage(
|
||||||
|
message.title,
|
||||||
|
message.message,
|
||||||
|
icon,
|
||||||
|
msecs=settings.value("tray/notifications/duration_ms", type=int),
|
||||||
|
)
|
||||||
|
|
||||||
def settings_callback(self):
|
def settings_callback(self):
|
||||||
settings_dialog = SettingsDialog(self)
|
settings_dialog = SettingsDialog(self)
|
||||||
|
|||||||
Reference in New Issue
Block a user