diff --git a/resources/desktop/com.github.rssguard.appdata.xml b/resources/desktop/com.github.rssguard.appdata.xml
index d4acda93c..6519786d8 100644
--- a/resources/desktop/com.github.rssguard.appdata.xml
+++ b/resources/desktop/com.github.rssguard.appdata.xml
@@ -26,7 +26,7 @@
https://github.com/sponsors/martinrotter
-
+
none
diff --git a/resources/skins/dark/metadata.xml b/resources/skins/dark/metadata.xml
index 59495e05c..e50a378d9 100644
--- a/resources/skins/dark/metadata.xml
+++ b/resources/skins/dark/metadata.xml
@@ -4,8 +4,10 @@
Martin Rotter
- #7ae2ff
- #f08f84
- #77dd77
+ #3A4EE4
+ #ff66cc
+ #4EE43A
+ #ff99ff
+ #00ff99
\ No newline at end of file
diff --git a/resources/skins/nudus/metadata.xml b/resources/skins/nudus/metadata.xml
index dd4b09043..7fd862261 100644
--- a/resources/skins/nudus/metadata.xml
+++ b/resources/skins/nudus/metadata.xml
@@ -1,11 +1,13 @@
-
+
Maki Blackwell
- #3A4EE4
- #E43A4E
- #4EE43A
+ #3A4EE4
+ #ff66cc
+ #4EE43A
+ #ff99ff
+ #00ff99
-
+
\ No newline at end of file
diff --git a/resources/skins/plain/metadata.xml b/resources/skins/plain/metadata.xml
index fabb1788a..ced7b669f 100644
--- a/resources/skins/plain/metadata.xml
+++ b/resources/skins/plain/metadata.xml
@@ -10,8 +10,10 @@
Specifically, they are taken from enumeration "PaletteColors".
-->
- #00BFFF
- #FF0000
- #32CD32
+ #3A4EE4
+ #ff66cc
+ #4EE43A
+ #ff99ff
+ #00ff99
\ No newline at end of file
diff --git a/resources/skins/vergilius/metadata.xml b/resources/skins/vergilius/metadata.xml
index 2b289cf13..78fb75561 100644
--- a/resources/skins/vergilius/metadata.xml
+++ b/resources/skins/vergilius/metadata.xml
@@ -4,8 +4,10 @@
Martin Rotter
- #4861f0
- #d93636
- #77dd77
+ #3A4EE4
+ #ff66cc
+ #4EE43A
+ #ff99ff
+ #00ff99
\ No newline at end of file
diff --git a/src/librssguard/core/messagesforfiltersmodel.cpp b/src/librssguard/core/messagesforfiltersmodel.cpp
index ee9e1af99..f0c793ce2 100644
--- a/src/librssguard/core/messagesforfiltersmodel.cpp
+++ b/src/librssguard/core/messagesforfiltersmodel.cpp
@@ -39,11 +39,11 @@ QVariant MessagesForFiltersModel::data(const QModelIndex& index, int role) const
if (m_filteringDecisions.contains(index.row())) {
switch (m_filteringDecisions.value(index.row())) {
case MessageObject::FilteringAction::Accept:
- return qApp->skins()->currentSkin().m_colorPalette[Skin::PaletteColors::Allright];
+ return qApp->skins()->currentSkin().m_colorPalette[SkinEnums::PaletteColors::Allright];
case MessageObject::FilteringAction::Ignore:
case MessageObject::FilteringAction::Purge:
- return qApp->skins()->currentSkin().m_colorPalette[Skin::PaletteColors::Error];
+ return qApp->skins()->currentSkin().m_colorPalette[SkinEnums::PaletteColors::FgError];
default:
break;
diff --git a/src/librssguard/core/messagesmodel.cpp b/src/librssguard/core/messagesmodel.cpp
index d457e50a5..0aaad9d2d 100644
--- a/src/librssguard/core/messagesmodel.cpp
+++ b/src/librssguard/core/messagesmodel.cpp
@@ -386,19 +386,28 @@ QVariant MessagesModel::data(const QModelIndex& idx, int role) const {
}
case Qt::ItemDataRole::ForegroundRole:
+ case HIGHLIGHTED_FOREGROUND_TITLE_ROLE:
switch (m_messageHighlighter) {
case MessageHighlighter::HighlightImportant: {
QModelIndex idx_important = index(idx.row(), MSG_DB_IMPORTANT_INDEX);
QVariant dta = m_cache->containsData(idx_important.row()) ? m_cache->data(idx_important) : QSqlQueryModel::data(idx_important);
- return dta.toInt() == 1 ? qApp->skins()->currentSkin().m_colorPalette[Skin::PaletteColors::Highlight] : QVariant();
+ return dta.toInt() == 1
+ ? qApp->skins()->currentSkin().m_colorPalette[role == Qt::ItemDataRole::ForegroundRole
+ ? SkinEnums::PaletteColors::FgInteresting
+ : SkinEnums::PaletteColors::FgSelectedInteresting]
+ : QVariant();
}
case MessageHighlighter::HighlightUnread: {
QModelIndex idx_read = index(idx.row(), MSG_DB_READ_INDEX);
QVariant dta = m_cache->containsData(idx_read.row()) ? m_cache->data(idx_read) : QSqlQueryModel::data(idx_read);
- return dta.toInt() == 0 ? qApp->skins()->currentSkin().m_colorPalette[Skin::PaletteColors::Highlight] : QVariant();
+ return dta.toInt() == 0
+ ? qApp->skins()->currentSkin().m_colorPalette[role == Qt::ItemDataRole::ForegroundRole
+ ? SkinEnums::PaletteColors::FgInteresting
+ : SkinEnums::PaletteColors::FgSelectedInteresting]
+ : QVariant();
}
case MessageHighlighter::NoHighlighting:
diff --git a/src/librssguard/definitions/definitions.h b/src/librssguard/definitions/definitions.h
index 149300c34..566306565 100644
--- a/src/librssguard/definitions/definitions.h
+++ b/src/librssguard/definitions/definitions.h
@@ -46,6 +46,9 @@
#define MSG_SCORE_MAX 100.0
#define MSG_SCORE_MIN 0.0
+#define LOWER_TITLE_ROLE 64
+#define HIGHLIGHTED_FOREGROUND_TITLE_ROLE 128
+
#define SOUNDS_BUILTIN_DIRECTORY ":/sounds"
#define ARGUMENTS_LIST_SEPARATOR "\n"
#define IS_IN_ARRAY(offset, array) ((offset >= 0) && (offset < array.count()))
@@ -57,7 +60,6 @@
#define SCRIPT_SOURCE_TYPE_REGEXP "^.+#.*$"
#define TEXT_TITLE_LIMIT 30
#define TEXT_TOOLTIP_LIMIT 50
-#define LOWER_TITLE_ROLE 64
#define RESELECT_MESSAGE_THRESSHOLD 500
#define ICON_SIZE_SETTINGS 16
#define TRAY_ICON_BUBBLE_TIMEOUT 20000
diff --git a/src/librssguard/gui/messagebrowser.cpp b/src/librssguard/gui/messagebrowser.cpp
index 6eb333f4d..0295a50d6 100644
--- a/src/librssguard/gui/messagebrowser.cpp
+++ b/src/librssguard/gui/messagebrowser.cpp
@@ -169,7 +169,7 @@ QString MessageBrowser::prepareHtmlForMessage(const Message& message) {
""
"%1"
"