diff --git a/resources/desktop/com.github.rssguard.appdata.xml b/resources/desktop/com.github.rssguard.appdata.xml
index 3ef4dfdfb..03977a5b5 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/nudus-dark/metadata.xml b/resources/skins/nudus-dark/metadata.xml
index e47d73fc2..29d52d998 100644
--- a/resources/skins/nudus-dark/metadata.xml
+++ b/resources/skins/nudus-dark/metadata.xml
@@ -1,8 +1,9 @@
-
+
akinokonomi, martinrotter
+ Dark variant of 'nudus-light' skin.
#85ACF6
#D9E3F7
@@ -10,7 +11,7 @@
#910303
#44AA44
- true
+ false
#373A3D
@@ -23,7 +24,7 @@
#323437
#8291AD
- #2D2F32
+ #2D2F32
#323437
#D8D8D8
diff --git a/resources/skins/nudus-light/metadata.xml b/resources/skins/nudus-light/metadata.xml
index 6a44037a1..9d7cd9e54 100644
--- a/resources/skins/nudus-light/metadata.xml
+++ b/resources/skins/nudus-light/metadata.xml
@@ -1,5 +1,5 @@
-
+
akinokonomi, martinrotter
@@ -10,39 +10,4 @@
#FFD7D7
#77dd77
- false
-
-
- #373A3D
- #323437
- #2D2F32
- #202224
- #292c2e
- #292c2e
- #292c2e
- #323437
- #8291AD
-
- #2D2F32
- #323437
-
- #D8D8D8
- #373A3D
- #FFFFFF
- #A7A7A7
- #D8D8D8
- #E7E7E7
- #D8D8D8
- #a1acc1
- #a1acc1
-
- #2D2F32
-
-
-
- #999999
- #A7A7A7
- #999999
-
-
\ No newline at end of file
diff --git a/src/librssguard/gui/settings/settingsgui.cpp b/src/librssguard/gui/settings/settingsgui.cpp
index 34e73529a..024f274ce 100644
--- a/src/librssguard/gui/settings/settingsgui.cpp
+++ b/src/librssguard/gui/settings/settingsgui.cpp
@@ -30,7 +30,7 @@ SettingsGui::SettingsGui(Settings* settings, QWidget* parent) : SettingsPanel(se
m_ui->m_editorFeedsToolbar->availableItemsWidget()->viewport()->installEventFilter(this);
m_ui->m_treeSkins->setColumnCount(4);
m_ui->m_treeSkins->setHeaderHidden(false);
- m_ui->m_treeSkins->setHeaderLabels({ tr("Name"), tr("Author"), tr("Forced style"), tr("Forced alternative palette") });
+ m_ui->m_treeSkins->setHeaderLabels({ tr("Name"), tr("Author"), tr("Forced style"), tr("Forced UI colors") });
m_ui->m_tabUi->setTabVisible(m_ui->m_tabUi->indexOf(m_ui->m_tabTaskBar),
#if (defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)) || defined(Q_OS_WIN)
@@ -127,9 +127,7 @@ void SettingsGui::updateSkinOptions() {
const bool skin_forces_style = !skin.m_forcedStyles.isEmpty();
m_ui->m_cmbStyles->setEnabled(!qApp->skins()->styleIsFrozen() && !skin_forces_style);
- m_ui->m_checkForceAlternativePalette->setEnabled(skin_has_palette
- ? !skin_forces_palette
- : qApp->skins()->isStyleGoodForAlternativeStylePalette(m_ui->m_cmbStyles->currentText()));
+ m_ui->m_checkForceAlternativePalette->setEnabled(skin_has_palette && !skin_forces_palette);
}
void SettingsGui::loadSettings() {
@@ -194,7 +192,7 @@ void SettingsGui::loadSettings() {
m_ui->m_cmbStyles->setCurrentIndex(item_style);
}
- m_ui->m_checkForceAlternativePalette->setChecked(settings()->value(GROUP(GUI), SETTING(GUI::ForceDarkFusion)).toBool());
+ m_ui->m_checkForceAlternativePalette->setChecked(settings()->value(GROUP(GUI), SETTING(GUI::ForceSkinPalette)).toBool());
// Load skin.
const QString selected_skin = qApp->skins()->selectedSkinName();
@@ -207,6 +205,16 @@ void SettingsGui::loadSettings() {
skin.m_forcedStyles.isEmpty() ? QString() : skin.m_forcedStyles.join(QSL(", ")),
QString() });
+ new_item->setToolTip(0, tr("%1\n\n"
+ "Version: %2\n"
+ "Description: %3").arg(skin.m_visibleName,
+ skin.m_version,
+ skin.m_description.isEmpty() ? QSL("-") : skin.m_description));
+
+ for (int i = 1; i < m_ui->m_treeSkins->columnCount(); i++) {
+ new_item->setToolTip(i, new_item->toolTip(0));
+ }
+
if (skin.m_forcedStyles.isEmpty()) {
new_item->setIcon(2, qApp->icons()->fromTheme(QSL("dialog-cancel"), QSL("gtk-cancel")));
}
@@ -395,7 +403,7 @@ void SettingsGui::saveSettings() {
}
if (m_ui->m_checkForceAlternativePalette->isEnabled()) {
- settings()->setValue(GROUP(GUI), GUI::ForceDarkFusion, m_ui->m_checkForceAlternativePalette->isChecked());
+ settings()->setValue(GROUP(GUI), GUI::ForceSkinPalette, m_ui->m_checkForceAlternativePalette->isChecked());
}
// Save tab settings.
diff --git a/src/librssguard/gui/tabwidget.cpp b/src/librssguard/gui/tabwidget.cpp
index 4bdae2fd7..1c6df139b 100644
--- a/src/librssguard/gui/tabwidget.cpp
+++ b/src/librssguard/gui/tabwidget.cpp
@@ -124,7 +124,6 @@ void TabWidget::tabRemoved(int index) {
void TabWidget::createConnections() {
connect(tabBar(), &TabBar::tabCloseRequested, this, &TabWidget::closeTab);
- connect(tabBar(), &TabBar::emptySpaceDoubleClicked, this, &TabWidget::addEmptyBrowser);
connect(tabBar(), &TabBar::tabMoved, this, &TabWidget::fixContentsAfterMove);
connect(feedMessageViewer()->messagesView(), &MessagesView::openMessagesInNewspaperView, this, &TabWidget::addNewspaperView);
diff --git a/src/librssguard/miscellaneous/settings.cpp b/src/librssguard/miscellaneous/settings.cpp
index 851e17ec9..12ba0df35 100644
--- a/src/librssguard/miscellaneous/settings.cpp
+++ b/src/librssguard/miscellaneous/settings.cpp
@@ -257,8 +257,8 @@ DVALUE(bool) GUI::HideMainWindowWhenMinimizedDef = false;
DKEY GUI::MonochromeTrayIcon = "monochrome_tray_icon";
DVALUE(bool) GUI::MonochromeTrayIconDef = false;
-DKEY GUI::ForceDarkFusion = "force_dark_fusion";
-DVALUE(bool) GUI::ForceDarkFusionDef = false;
+DKEY GUI::ForceSkinPalette = "force_skin_palette";
+DVALUE(bool) GUI::ForceSkinPaletteDef = true;
DKEY GUI::UnreadNumbersInTrayIcon = "show_unread_numbers_in_tray_icon";
DVALUE(bool) GUI::UnreadNumbersInTrayIconDef = true;
diff --git a/src/librssguard/miscellaneous/settings.h b/src/librssguard/miscellaneous/settings.h
index 710654ebc..69df38f9c 100644
--- a/src/librssguard/miscellaneous/settings.h
+++ b/src/librssguard/miscellaneous/settings.h
@@ -255,8 +255,8 @@ namespace GUI {
KEY HideMainWindowWhenMinimized;
VALUE(bool) HideMainWindowWhenMinimizedDef;
- KEY ForceDarkFusion;
- VALUE(bool) ForceDarkFusionDef;
+ KEY ForceSkinPalette;
+ VALUE(bool) ForceSkinPaletteDef;
KEY AlternateRowColorsInLists;
VALUE(bool) AlternateRowColorsInListsDef;
diff --git a/src/librssguard/miscellaneous/skinfactory.cpp b/src/librssguard/miscellaneous/skinfactory.cpp
index 1fe9ade8d..31dd44f69 100644
--- a/src/librssguard/miscellaneous/skinfactory.cpp
+++ b/src/librssguard/miscellaneous/skinfactory.cpp
@@ -86,7 +86,7 @@ void SkinFactory::loadSkinFromData(const Skin& skin) {
if (isStyleGoodForAlternativeStylePalette(m_currentStyle) &&
!skin.m_stylePalette.isEmpty() &&
- (skin.m_forcedStylePalette || qApp->settings()->value(GROUP(GUI), SETTING(GUI::ForceDarkFusion)).toBool())) {
+ (skin.m_forcedStylePalette || qApp->settings()->value(GROUP(GUI), SETTING(GUI::ForceSkinPalette)).toBool())) {
qDebugNN << LOGSEC_GUI << "Activating alternative palette.";
QPalette pal = skin.extractPalette();
@@ -182,16 +182,11 @@ Skin SkinFactory::skinInfo(const QString& skin_name, bool* ok) const {
}
}
- // Obtain visible skin name.
+ // Obtain skin data.
skin.m_visibleName = skin_name;
-
- // Obtain author.
skin.m_author = skin_node.namedItem(QSL("author")).namedItem(QSL("name")).toElement().text();
-
- // Obtain version.
skin.m_version = skin_node.attributes().namedItem(QSL("version")).toAttr().value();
-
- // Obtain other information.
+ skin.m_description = skin_node.namedItem(QSL("description")).toElement().text();
skin.m_baseName = skin_name;
// Obtain color palette.
diff --git a/src/librssguard/miscellaneous/skinfactory.h b/src/librssguard/miscellaneous/skinfactory.h
index 412a5cbf2..3fb4ff0b0 100644
--- a/src/librssguard/miscellaneous/skinfactory.h
+++ b/src/librssguard/miscellaneous/skinfactory.h
@@ -43,6 +43,7 @@ struct RSSGUARD_DLLSPEC Skin {
QString m_visibleName;
QString m_author;
QString m_version;
+ QString m_description;
QString m_rawData;
QString m_adblocked;
QString m_layoutMarkupWrapper;