fix #1672 and make sure http2 setting is used when guessing a feed
This commit is contained in:
parent
c68e545ea4
commit
e1e7abd6ca
9 changed files with 39 additions and 13 deletions
|
@ -56,7 +56,8 @@ void FormStandardFeedDetails::guessFeed() {
|
||||||
m_authDetails->username(),
|
m_authDetails->username(),
|
||||||
m_authDetails->password(),
|
m_authDetails->password(),
|
||||||
StandardFeed::httpHeadersToList(m_headersDetails->httpHeaders()),
|
StandardFeed::httpHeadersToList(m_headersDetails->httpHeaders()),
|
||||||
m_serviceRoot->networkProxy());
|
m_serviceRoot->networkProxy(),
|
||||||
|
m_standardFeedExpDetails->http2Status());
|
||||||
}
|
}
|
||||||
|
|
||||||
void FormStandardFeedDetails::guessIconOnly() {
|
void FormStandardFeedDetails::guessIconOnly() {
|
||||||
|
@ -139,9 +140,7 @@ void FormStandardFeedDetails::apply() {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isChangeAllowed(m_standardFeedExpDetails->m_ui.m_mcbEnableHttp2)) {
|
if (isChangeAllowed(m_standardFeedExpDetails->m_ui.m_mcbEnableHttp2)) {
|
||||||
std_feed->setHttp2Status(static_cast<NetworkFactory::Http2Status>(m_standardFeedExpDetails->m_ui.m_cmbEnableHttp2
|
std_feed->setHttp2Status(m_standardFeedExpDetails->http2Status());
|
||||||
->currentData()
|
|
||||||
.toInt()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
std_feed->setCreationDate(QDateTime::currentDateTime());
|
std_feed->setCreationDate(QDateTime::currentDateTime());
|
||||||
|
@ -227,9 +226,7 @@ void FormStandardFeedDetails::loadFeedData() {
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
m_standardFeedDetails->setExistingFeed(std_feed);
|
m_standardFeedDetails->setExistingFeed(std_feed);
|
||||||
|
|
||||||
m_standardFeedExpDetails->m_ui.m_cbDontUseRawXml->setChecked(std_feed->dontUseRawXmlSaving());
|
m_standardFeedExpDetails->m_ui.m_cbDontUseRawXml->setChecked(std_feed->dontUseRawXmlSaving());
|
||||||
m_standardFeedExpDetails->m_ui.m_cmbEnableHttp2
|
m_standardFeedExpDetails->setHttp2Status(std_feed->http2Status());
|
||||||
->setCurrentIndex(m_standardFeedExpDetails->m_ui.m_cmbEnableHttp2->findData(int(std_feed->http2Status())));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -237,7 +237,8 @@ void StandardFeedDetails::guessFeed(StandardFeed::SourceType source_type,
|
||||||
const QString& username,
|
const QString& username,
|
||||||
const QString& password,
|
const QString& password,
|
||||||
const QList<QPair<QByteArray, QByteArray>>& headers,
|
const QList<QPair<QByteArray, QByteArray>>& headers,
|
||||||
const QNetworkProxy& custom_proxy) {
|
const QNetworkProxy& custom_proxy,
|
||||||
|
NetworkFactory::Http2Status http2_status) {
|
||||||
try {
|
try {
|
||||||
auto metadata = StandardFeed::guessFeed(source_type,
|
auto metadata = StandardFeed::guessFeed(source_type,
|
||||||
source,
|
source,
|
||||||
|
@ -248,7 +249,8 @@ void StandardFeedDetails::guessFeed(StandardFeed::SourceType source_type,
|
||||||
username,
|
username,
|
||||||
password,
|
password,
|
||||||
headers,
|
headers,
|
||||||
custom_proxy);
|
custom_proxy,
|
||||||
|
http2_status);
|
||||||
|
|
||||||
// Icon or whole feed was guessed.
|
// Icon or whole feed was guessed.
|
||||||
m_ui.m_btnIcon->setIcon(metadata.first->icon());
|
m_ui.m_btnIcon->setIcon(metadata.first->icon());
|
||||||
|
|
|
@ -42,7 +42,8 @@ class StandardFeedDetails : public QWidget {
|
||||||
const QString& username,
|
const QString& username,
|
||||||
const QString& password,
|
const QString& password,
|
||||||
const QList<QPair<QByteArray, QByteArray>>& headers = {},
|
const QList<QPair<QByteArray, QByteArray>>& headers = {},
|
||||||
const QNetworkProxy& custom_proxy = QNetworkProxy::ProxyType::DefaultProxy);
|
const QNetworkProxy& custom_proxy = QNetworkProxy::ProxyType::DefaultProxy,
|
||||||
|
NetworkFactory::Http2Status http2_status = NetworkFactory::Http2Status::DontSet);
|
||||||
|
|
||||||
void onTitleChanged(const QString& new_title);
|
void onTitleChanged(const QString& new_title);
|
||||||
void onDescriptionChanged(const QString& new_description);
|
void onDescriptionChanged(const QString& new_description);
|
||||||
|
|
|
@ -33,3 +33,11 @@ StandardFeedExpDetails::StandardFeedExpDetails(QWidget* parent) : QWidget(parent
|
||||||
m_ui.m_cmbEnableHttp2->addItem(tr("Enabled"), QVariant::fromValue(int(NetworkFactory::Http2Status::Enabled)));
|
m_ui.m_cmbEnableHttp2->addItem(tr("Enabled"), QVariant::fromValue(int(NetworkFactory::Http2Status::Enabled)));
|
||||||
m_ui.m_cmbEnableHttp2->addItem(tr("Disabled"), QVariant::fromValue(int(NetworkFactory::Http2Status::Disabled)));
|
m_ui.m_cmbEnableHttp2->addItem(tr("Disabled"), QVariant::fromValue(int(NetworkFactory::Http2Status::Disabled)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void StandardFeedExpDetails::setHttp2Status(NetworkFactory::Http2Status status) {
|
||||||
|
m_ui.m_cmbEnableHttp2->setCurrentIndex(m_ui.m_cmbEnableHttp2->findData(int(status)));
|
||||||
|
}
|
||||||
|
|
||||||
|
NetworkFactory::Http2Status StandardFeedExpDetails::http2Status() const {
|
||||||
|
return static_cast<NetworkFactory::Http2Status>(m_ui.m_cmbEnableHttp2->currentData().toInt());
|
||||||
|
}
|
||||||
|
|
|
@ -21,6 +21,9 @@ class StandardFeedExpDetails : public QWidget {
|
||||||
public:
|
public:
|
||||||
explicit StandardFeedExpDetails(QWidget* parent = nullptr);
|
explicit StandardFeedExpDetails(QWidget* parent = nullptr);
|
||||||
|
|
||||||
|
void setHttp2Status(NetworkFactory::Http2Status status);
|
||||||
|
NetworkFactory::Http2Status http2Status() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Ui::StandardFeedExpDetails m_ui;
|
Ui::StandardFeedExpDetails m_ui;
|
||||||
};
|
};
|
||||||
|
|
|
@ -307,7 +307,8 @@ QPair<StandardFeed*, NetworkResult> StandardFeed::guessFeed(StandardFeed::Source
|
||||||
const QString& username,
|
const QString& username,
|
||||||
const QString& password,
|
const QString& password,
|
||||||
const QList<QPair<QByteArray, QByteArray>>& http_headers,
|
const QList<QPair<QByteArray, QByteArray>>& http_headers,
|
||||||
const QNetworkProxy& custom_proxy) {
|
const QNetworkProxy& custom_proxy,
|
||||||
|
NetworkFactory::Http2Status http2_status) {
|
||||||
auto timeout = qApp->settings()->value(GROUP(Feeds), SETTING(Feeds::UpdateTimeout)).toInt();
|
auto timeout = qApp->settings()->value(GROUP(Feeds), SETTING(Feeds::UpdateTimeout)).toInt();
|
||||||
QByteArray feed_contents;
|
QByteArray feed_contents;
|
||||||
NetworkResult network_result;
|
NetworkResult network_result;
|
||||||
|
@ -328,7 +329,8 @@ QPair<StandardFeed*, NetworkResult> StandardFeed::guessFeed(StandardFeed::Source
|
||||||
false,
|
false,
|
||||||
{},
|
{},
|
||||||
{},
|
{},
|
||||||
custom_proxy);
|
custom_proxy,
|
||||||
|
http2_status);
|
||||||
|
|
||||||
// account->resetHostSpacing(host);
|
// account->resetHostSpacing(host);
|
||||||
|
|
||||||
|
|
|
@ -92,7 +92,9 @@ class StandardFeed : public Feed {
|
||||||
const QString& password = {},
|
const QString& password = {},
|
||||||
const QList<QPair<QByteArray, QByteArray>>& http_headers = {},
|
const QList<QPair<QByteArray, QByteArray>>& http_headers = {},
|
||||||
const QNetworkProxy& custom_proxy =
|
const QNetworkProxy& custom_proxy =
|
||||||
QNetworkProxy::ProxyType::DefaultProxy);
|
QNetworkProxy::ProxyType::DefaultProxy,
|
||||||
|
NetworkFactory::Http2Status http2_status =
|
||||||
|
NetworkFactory::Http2Status::DontSet);
|
||||||
|
|
||||||
// Converts particular feed type to string.
|
// Converts particular feed type to string.
|
||||||
static QString typeToString(Type type);
|
static QString typeToString(Type type);
|
||||||
|
|
|
@ -32,6 +32,9 @@ SystemTrayIcon::SystemTrayIcon(const QString& normal_icon, const QString& plain_
|
||||||
qDebugNN << LOGSEC_GUI << "Creating SystemTrayIcon instance.";
|
qDebugNN << LOGSEC_GUI << "Creating SystemTrayIcon instance.";
|
||||||
m_font.setBold(true);
|
m_font.setBold(true);
|
||||||
|
|
||||||
|
m_tmrDoubleFire.setSingleShot(true);
|
||||||
|
m_tmrDoubleFire.setInterval(100);
|
||||||
|
|
||||||
// Initialize icon.
|
// Initialize icon.
|
||||||
setNumber();
|
setNumber();
|
||||||
setContextMenu(parent->trayMenu());
|
setContextMenu(parent->trayMenu());
|
||||||
|
@ -46,6 +49,12 @@ SystemTrayIcon::~SystemTrayIcon() {
|
||||||
}
|
}
|
||||||
|
|
||||||
void SystemTrayIcon::onActivated(QSystemTrayIcon::ActivationReason reason) {
|
void SystemTrayIcon::onActivated(QSystemTrayIcon::ActivationReason reason) {
|
||||||
|
if (m_tmrDoubleFire.isActive()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
m_tmrDoubleFire.start();
|
||||||
|
|
||||||
switch (reason) {
|
switch (reason) {
|
||||||
case SystemTrayIcon::ActivationReason::Trigger:
|
case SystemTrayIcon::ActivationReason::Trigger:
|
||||||
case SystemTrayIcon::ActivationReason::DoubleClick:
|
case SystemTrayIcon::ActivationReason::DoubleClick:
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
#include <QMenu>
|
#include <QMenu>
|
||||||
#include <QPixmap>
|
#include <QPixmap>
|
||||||
#include <QSystemTrayIcon>
|
#include <QSystemTrayIcon>
|
||||||
|
#include <QTimer>
|
||||||
|
|
||||||
class FormMain;
|
class FormMain;
|
||||||
class QEvent;
|
class QEvent;
|
||||||
|
@ -66,6 +67,7 @@ class SystemTrayIcon : public QSystemTrayIcon {
|
||||||
QIcon m_normalIcon;
|
QIcon m_normalIcon;
|
||||||
QPixmap m_plainPixmap;
|
QPixmap m_plainPixmap;
|
||||||
QFont m_font = QFont();
|
QFont m_font = QFont();
|
||||||
|
QTimer m_tmrDoubleFire;
|
||||||
|
|
||||||
QMetaObject::Connection m_connection;
|
QMetaObject::Connection m_connection;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Reference in a new issue