diff --git a/src/librssguard/gui/settings/settingsfeedsmessages.cpp b/src/librssguard/gui/settings/settingsfeedsmessages.cpp index ad8a3a7e0..3766eca88 100644 --- a/src/librssguard/gui/settings/settingsfeedsmessages.cpp +++ b/src/librssguard/gui/settings/settingsfeedsmessages.cpp @@ -28,7 +28,12 @@ SettingsFeedsMessages::SettingsFeedsMessages(Settings* settings, QWidget* parent #if defined(USE_WEBENGINE) m_ui->m_tabMessages->layout()->removeWidget(m_ui->m_checkDisplayPlaceholders); m_ui->m_checkDisplayPlaceholders->hide(); + + connect(m_ui->m_cbShowEnclosuresDirectly, &QCheckBox::toggled, this, &SettingsFeedsMessages::dirtifySettings); #else + m_ui->m_tabMessages->layout()->removeWidget(m_ui->m_cbShowEnclosuresDirectly); + m_ui->m_cbShowEnclosuresDirectly->hide()); + connect(m_ui->m_checkDisplayPlaceholders, &QCheckBox::toggled, this, &SettingsFeedsMessages::dirtifySettings); #endif @@ -147,6 +152,9 @@ void SettingsFeedsMessages::loadSettings() { #if !defined (USE_WEBENGINE) m_ui->m_checkDisplayPlaceholders->setChecked(settings()->value(GROUP(Messages), SETTING(Messages::DisplayImagePlaceholders)).toBool()); +#else + m_ui->m_cbShowEnclosuresDirectly->setChecked(settings()->value(GROUP(Messages), + SETTING(Messages::DisplayEnclosuresInMessage)).toBool()); #endif m_ui->m_checkMessagesDateTimeFormat->setChecked(settings()->value(GROUP(Messages), SETTING(Messages::UseCustomDate)).toBool()); @@ -207,6 +215,10 @@ void SettingsFeedsMessages::saveSettings() { #if !defined (USE_WEBENGINE) settings()->setValue(GROUP(Messages), Messages::DisplayImagePlaceholders, m_ui->m_checkDisplayPlaceholders->isChecked()); +#else + settings()->setValue(GROUP(Messages), + Messages::DisplayEnclosuresInMessage, + m_ui->m_cbShowEnclosuresDirectly->isChecked()); #endif settings()->setValue(GROUP(Messages), Messages::CustomDateFormat, diff --git a/src/librssguard/gui/settings/settingsfeedsmessages.ui b/src/librssguard/gui/settings/settingsfeedsmessages.ui index e111e8018..24867d0f4 100644 --- a/src/librssguard/gui/settings/settingsfeedsmessages.ui +++ b/src/librssguard/gui/settings/settingsfeedsmessages.ui @@ -247,28 +247,28 @@ - + Display real icons of feeds in list of articles instead of read/unread icons - + Bring application window to front once article is opened in external web browser - + Keep article selection in the middle of the article list viewport - + Height or rows in article list (-1 = default height) @@ -278,7 +278,7 @@ - + -1 @@ -288,7 +288,7 @@ - + Height of image attachments @@ -298,7 +298,7 @@ - + 22 @@ -308,7 +308,7 @@ - + @@ -377,7 +377,7 @@ - + Use custom date/time format (overrides format loaded from active localization) @@ -390,10 +390,10 @@ - + - + Qt::Vertical @@ -406,6 +406,13 @@ + + + + Display attached pictures directly in article + + + @@ -434,6 +441,7 @@ m_checkShowTooltips m_checkRemoveReadMessagesOnExit m_checkDisplayPlaceholders + m_cbShowEnclosuresDirectly m_checkDisplayFeedIcons m_checkBringToForegroundAfterMsgOpened m_checkKeppMessagesInTheMiddle diff --git a/src/librssguard/gui/webviewer.cpp b/src/librssguard/gui/webviewer.cpp index f38fedd34..6c6af5036 100644 --- a/src/librssguard/gui/webviewer.cpp +++ b/src/librssguard/gui/webviewer.cpp @@ -120,15 +120,14 @@ void WebViewer::loadMessages(const QList& messages, RootItem* root) { enclosures += skin.m_enclosureMarkup.arg(enc_url, QSL("🧷"), enclosure.m_mimeType); - /* - if (enclosure.m_mimeType.startsWith(QSL("image/"))) { - // Add thumbnail image. - enclosure_images += skin.m_enclosureImageMarkup.arg( + if (enclosure.m_mimeType.startsWith(QSL("image/")) && + qApp->settings()->value(GROUP(Messages), SETTING(Messages::DisplayEnclosuresInMessage)).toBool()) { + // Add thumbnail image. + enclosure_images += skin.m_enclosureImageMarkup.arg( enclosure.m_url, enclosure.m_mimeType, qApp->settings()->value(GROUP(Messages), SETTING(Messages::MessageHeadImageHeight)).toString()); - } - */ + } } messages_layout.append(single_message_layout diff --git a/src/librssguard/miscellaneous/settings.cpp b/src/librssguard/miscellaneous/settings.cpp index 9d69c4678..9de07d8b6 100755 --- a/src/librssguard/miscellaneous/settings.cpp +++ b/src/librssguard/miscellaneous/settings.cpp @@ -80,6 +80,11 @@ DKEY Messages::ID = "messages"; DKEY Messages::MessageHeadImageHeight = "message_head_image_height"; DVALUE(int) Messages::MessageHeadImageHeightDef = 36; +#if defined (USE_WEBENGINE) +DKEY Messages::DisplayEnclosuresInMessage = "show_enclosures_in_message"; +DVALUE(bool) Messages::DisplayEnclosuresInMessageDef = false; +#endif + DKEY Messages::EnableMessagePreview = "enable_message_preview"; DVALUE(bool) Messages::EnableMessagePreviewDef = true; diff --git a/src/librssguard/miscellaneous/settings.h b/src/librssguard/miscellaneous/settings.h index c6414378d..626c4a15a 100644 --- a/src/librssguard/miscellaneous/settings.h +++ b/src/librssguard/miscellaneous/settings.h @@ -99,6 +99,9 @@ namespace Messages { KEY MessageHeadImageHeight; VALUE(int) MessageHeadImageHeightDef; + KEY DisplayEnclosuresInMessage; + VALUE(bool) DisplayEnclosuresInMessageDef; + KEY EnableMessagePreview; VALUE(bool) EnableMessagePreviewDef;