- if(uiSettings.value("AnimateTrayIcon", QVariant(true)).toBool()) {
- QApplication::alert(this);
- setTrayIconActivity(true);
+
+ // FIXME Don't instantiate this for every highlight...
+ UiSettings uiSettings;
+
+ bool displayBubble = uiSettings.value("NotificationBubble", QVariant(true)).toBool();
+ bool displayDesktop = uiSettings.value("NotificationDesktop", QVariant(true)).toBool();
+ if(displayBubble || displayDesktop) {
+ if(uiSettings.value("DisplayPopupMessages", QVariant(true)).toBool()) {
+ // FIXME don't invoke style engine for this!
+ QString text = idx.data(ChatLineModel::DisplayRole).toString();
+ if(displayBubble) displayTrayIconMessage(title, text);
+ # ifdef HAVE_DBUS
+ if(displayDesktop) sendDesktopNotification(title, text);
+ # endif
+ }
+ if(uiSettings.value("AnimateTrayIcon", QVariant(true)).toBool()) {
+ QApplication::alert(this);
+ setTrayIconActivity(true);
+ }