fix #953 and some missing icon
This commit is contained in:
parent
df7e9109b1
commit
daf0ca4636
@ -554,7 +554,7 @@ void FormMain::setupIcons() {
|
|||||||
IconFactory* icon_theme_factory = qApp->icons();
|
IconFactory* icon_theme_factory = qApp->icons();
|
||||||
|
|
||||||
// Setup icons of this main window.
|
// Setup icons of this main window.
|
||||||
m_ui->m_actionDownloadManager->setIcon(icon_theme_factory->fromTheme(QSL("emblem-downloads")));
|
m_ui->m_actionDownloadManager->setIcon(icon_theme_factory->fromTheme(QSL("emblem-downloads"), QSL("download")));
|
||||||
m_ui->m_actionSettings->setIcon(icon_theme_factory->fromTheme(QSL("emblem-system"), QSL("applications-system")));
|
m_ui->m_actionSettings->setIcon(icon_theme_factory->fromTheme(QSL("emblem-system"), QSL("applications-system")));
|
||||||
m_ui->m_actionQuit->setIcon(icon_theme_factory->fromTheme(QSL("application-exit")));
|
m_ui->m_actionQuit->setIcon(icon_theme_factory->fromTheme(QSL("application-exit")));
|
||||||
m_ui->m_actionRestart->setIcon(icon_theme_factory->fromTheme(QSL("view-refresh")));
|
m_ui->m_actionRestart->setIcon(icon_theme_factory->fromTheme(QSL("view-refresh")));
|
||||||
|
@ -74,7 +74,7 @@ void TabWidget::showDownloadManager() {
|
|||||||
// Download manager is not opened. Create tab with it.
|
// Download manager is not opened. Create tab with it.
|
||||||
qApp->downloadManager()->setParent(this);
|
qApp->downloadManager()->setParent(this);
|
||||||
addTab(qApp->downloadManager(),
|
addTab(qApp->downloadManager(),
|
||||||
qApp->icons()->fromTheme(QSL("emblem-downloads")),
|
qApp->icons()->fromTheme(QSL("emblem-downloads"), QSL("download")),
|
||||||
tr("Downloads"),
|
tr("Downloads"),
|
||||||
TabBar::TabType::DownloadManager);
|
TabBar::TabType::DownloadManager);
|
||||||
setCurrentIndex(count() - 1);
|
setCurrentIndex(count() - 1);
|
||||||
|
@ -22,7 +22,8 @@ StatusBar::StatusBar(QWidget* parent) : QStatusBar(parent) {
|
|||||||
m_barProgressFeeds->setVisible(false);
|
m_barProgressFeeds->setVisible(false);
|
||||||
m_barProgressFeeds->setObjectName(QSL("m_barProgressFeeds"));
|
m_barProgressFeeds->setObjectName(QSL("m_barProgressFeeds"));
|
||||||
|
|
||||||
m_barProgressFeedsAction = new QAction(qApp->icons()->fromTheme(QSL("application-rss+xml")), tr("Feed update progress bar"), this);
|
m_barProgressFeedsAction =
|
||||||
|
new QAction(qApp->icons()->fromTheme(QSL("application-rss+xml")), tr("Feed update progress bar"), this);
|
||||||
m_barProgressFeedsAction->setObjectName(QSL("m_barProgressFeedsAction"));
|
m_barProgressFeedsAction->setObjectName(QSL("m_barProgressFeedsAction"));
|
||||||
|
|
||||||
m_barProgressDownload = new ProgressBarWithText(this);
|
m_barProgressDownload = new ProgressBarWithText(this);
|
||||||
@ -31,7 +32,9 @@ StatusBar::StatusBar(QWidget* parent) : QStatusBar(parent) {
|
|||||||
m_barProgressDownload->setVisible(false);
|
m_barProgressDownload->setVisible(false);
|
||||||
m_barProgressDownload->setObjectName(QSL("m_barProgressDownload"));
|
m_barProgressDownload->setObjectName(QSL("m_barProgressDownload"));
|
||||||
|
|
||||||
m_barProgressDownloadAction = new QAction(qApp->icons()->fromTheme(QSL("emblem-downloads")), tr("File download progress bar"), this);
|
m_barProgressDownloadAction = new QAction(qApp->icons()->fromTheme(QSL("emblem-downloads"), QSL("download")),
|
||||||
|
tr("File download progress bar"),
|
||||||
|
this);
|
||||||
m_barProgressDownloadAction->setObjectName(QSL("m_barProgressDownloadAction"));
|
m_barProgressDownloadAction->setObjectName(QSL("m_barProgressDownloadAction"));
|
||||||
|
|
||||||
m_barProgressDownload->installEventFilter(this);
|
m_barProgressDownload->installEventFilter(this);
|
||||||
@ -46,8 +49,7 @@ QList<QAction*> StatusBar::availableActions() const {
|
|||||||
QList<QAction*> actions = qApp->userActions();
|
QList<QAction*> actions = qApp->userActions();
|
||||||
|
|
||||||
// Now, add placeholder actions for custom stuff.
|
// Now, add placeholder actions for custom stuff.
|
||||||
actions << m_barProgressDownloadAction
|
actions << m_barProgressDownloadAction << m_barProgressFeedsAction;
|
||||||
<< m_barProgressFeedsAction;
|
|
||||||
|
|
||||||
return actions;
|
return actions;
|
||||||
}
|
}
|
||||||
@ -62,21 +64,24 @@ void StatusBar::saveAndSetActions(const QStringList& actions) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
QStringList StatusBar::defaultActions() const {
|
QStringList StatusBar::defaultActions() const {
|
||||||
return QString(GUI::StatusbarActionsDef).split(',',
|
return QString(GUI::StatusbarActionsDef)
|
||||||
|
.split(',',
|
||||||
#if QT_VERSION >= 0x050F00 // Qt >= 5.15.0
|
#if QT_VERSION >= 0x050F00 // Qt >= 5.15.0
|
||||||
Qt::SplitBehaviorFlags::SkipEmptyParts);
|
Qt::SplitBehaviorFlags::SkipEmptyParts);
|
||||||
#else
|
#else
|
||||||
QString::SplitBehavior::SkipEmptyParts);
|
QString::SplitBehavior::SkipEmptyParts);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
QStringList StatusBar::savedActions() const {
|
QStringList StatusBar::savedActions() const {
|
||||||
return qApp->settings()->value(GROUP(GUI),
|
return qApp->settings()
|
||||||
SETTING(GUI::StatusbarActions)).toString().split(',',
|
->value(GROUP(GUI), SETTING(GUI::StatusbarActions))
|
||||||
|
.toString()
|
||||||
|
.split(',',
|
||||||
#if QT_VERSION >= 0x050F00 // Qt >= 5.15.0
|
#if QT_VERSION >= 0x050F00 // Qt >= 5.15.0
|
||||||
Qt::SplitBehaviorFlags::SkipEmptyParts);
|
Qt::SplitBehaviorFlags::SkipEmptyParts);
|
||||||
#else
|
#else
|
||||||
QString::SplitBehavior::SkipEmptyParts);
|
QString::SplitBehavior::SkipEmptyParts);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -174,7 +179,8 @@ bool StatusBar::eventFilter(QObject* watched, QEvent* event) {
|
|||||||
void StatusBar::clear() {
|
void StatusBar::clear() {
|
||||||
while (!actions().isEmpty()) {
|
while (!actions().isEmpty()) {
|
||||||
QAction* act = actions().at(0);
|
QAction* act = actions().at(0);
|
||||||
QWidget* widget = act->property("widget").isValid() ? static_cast<QWidget*>(act->property("widget").value<void*>()) : nullptr;
|
QWidget* widget =
|
||||||
|
act->property("widget").isValid() ? static_cast<QWidget*>(act->property("widget").value<void*>()) : nullptr;
|
||||||
|
|
||||||
if (widget != nullptr) {
|
if (widget != nullptr) {
|
||||||
removeWidget(widget);
|
removeWidget(widget);
|
||||||
|
@ -74,7 +74,8 @@ StandardFeedDetails::StandardFeedDetails(QWidget* parent) : QWidget(parent) {
|
|||||||
new QAction(qApp->icons()->fromTheme(QSL("image-x-generic")), tr("Load icon from file..."), this);
|
new QAction(qApp->icons()->fromTheme(QSL("image-x-generic")), tr("Load icon from file..."), this);
|
||||||
m_actionUseDefaultIcon =
|
m_actionUseDefaultIcon =
|
||||||
new QAction(qApp->icons()->fromTheme(QSL("application-rss+xml")), tr("Use default icon from icon theme"), this);
|
new QAction(qApp->icons()->fromTheme(QSL("application-rss+xml")), tr("Use default icon from icon theme"), this);
|
||||||
m_actionFetchIcon = new QAction(qApp->icons()->fromTheme(QSL("emblem-downloads")), tr("Fetch icon from feed"), this);
|
m_actionFetchIcon =
|
||||||
|
new QAction(qApp->icons()->fromTheme(QSL("emblem-downloads"), QSL("download")), tr("Fetch icon from feed"), this);
|
||||||
m_iconMenu->addAction(m_actionFetchIcon);
|
m_iconMenu->addAction(m_actionFetchIcon);
|
||||||
m_iconMenu->addAction(m_actionLoadIconFromFile);
|
m_iconMenu->addAction(m_actionLoadIconFromFile);
|
||||||
m_iconMenu->addAction(m_actionUseDefaultIcon);
|
m_iconMenu->addAction(m_actionUseDefaultIcon);
|
||||||
|
@ -28,6 +28,12 @@ if(QT_VERSION_MAJOR EQUAL 6)
|
|||||||
target_link_libraries(app PUBLIC
|
target_link_libraries(app PUBLIC
|
||||||
Qt${QT_VERSION_MAJOR}::Core5Compat
|
Qt${QT_VERSION_MAJOR}::Core5Compat
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
target_link_libraries(app PUBLIC
|
||||||
|
Qt${QT_VERSION_MAJOR}::GuiPrivate
|
||||||
|
)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
|
@ -11,6 +11,9 @@
|
|||||||
#if defined(Q_OS_WIN)
|
#if defined(Q_OS_WIN)
|
||||||
#if QT_VERSION_MAJOR == 5
|
#if QT_VERSION_MAJOR == 5
|
||||||
#include <QtPlatformHeaders/QWindowsWindowFunctions>
|
#include <QtPlatformHeaders/QWindowsWindowFunctions>
|
||||||
|
#else
|
||||||
|
#include <QWindow>
|
||||||
|
#include <QtGui/qpa/qplatformwindow_p.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -94,6 +97,9 @@ int main(int argc, char* argv[]) {
|
|||||||
|
|
||||||
#if defined(Q_OS_WIN)
|
#if defined(Q_OS_WIN)
|
||||||
#if QT_VERSION_MAJOR == 5
|
#if QT_VERSION_MAJOR == 5
|
||||||
|
QWindowsWindowFunctions::setHasBorderInFullScreenDefault(true);
|
||||||
|
|
||||||
|
// NOTE: https://github.com/martinrotter/rssguard/issues/953 for Qt 5.
|
||||||
QWindowsWindowFunctions::setWindowActivationBehavior(QWindowsWindowFunctions::AlwaysActivateWindow);
|
QWindowsWindowFunctions::setWindowActivationBehavior(QWindowsWindowFunctions::AlwaysActivateWindow);
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
@ -114,5 +120,15 @@ int main(int argc, char* argv[]) {
|
|||||||
qApp
|
qApp
|
||||||
->parseCmdArgumentsFromOtherInstance(qApp->cmdParser()->positionalArguments().join(QSL(ARGUMENTS_LIST_SEPARATOR)));
|
->parseCmdArgumentsFromOtherInstance(qApp->cmdParser()->positionalArguments().join(QSL(ARGUMENTS_LIST_SEPARATOR)));
|
||||||
|
|
||||||
|
#if defined(Q_OS_WIN)
|
||||||
|
#if QT_VERSION_MAJOR == 6
|
||||||
|
// NOTE: Fixes https://github.com/martinrotter/rssguard/issues/953 for Qt 6.
|
||||||
|
using QWindowsWindow = QNativeInterface::Private::QWindowsWindow;
|
||||||
|
if (auto w_w = main_window.windowHandle()->nativeInterface<QWindowsWindow>()) {
|
||||||
|
w_w->setHasBorderInFullScreen(true);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
return Application::exec();
|
return Application::exec();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user