summaryrefslogtreecommitdiffstats
path: root/src/platformsupport/themes/genericunix/dbustray/qdbustrayicon.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/platformsupport/themes/genericunix/dbustray/qdbustrayicon.cpp')
-rw-r--r--src/platformsupport/themes/genericunix/dbustray/qdbustrayicon.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/platformsupport/themes/genericunix/dbustray/qdbustrayicon.cpp b/src/platformsupport/themes/genericunix/dbustray/qdbustrayicon.cpp
index ca740f967e..b4b1fcaba7 100644
--- a/src/platformsupport/themes/genericunix/dbustray/qdbustrayicon.cpp
+++ b/src/platformsupport/themes/genericunix/dbustray/qdbustrayicon.cpp
@@ -53,6 +53,7 @@
#include <qrect.h>
#include <qloggingcategory.h>
#include <qstandardpaths.h>
+#include <qfileinfo.h>
#include <qdir.h>
#include <qmetaobject.h>
#include <qpa/qplatformintegration.h>
@@ -71,8 +72,12 @@ Q_LOGGING_CATEGORY(qLcTray, "qt.qpa.tray")
static QString iconTempPath()
{
QString tempPath = QStandardPaths::writableLocation(QStandardPaths::RuntimeLocation);
- if (!tempPath.isEmpty())
+ if (!tempPath.isEmpty()) {
+ QString flatpakId = qEnvironmentVariable("FLATPAK_ID");
+ if (!flatpakId.isEmpty() && QFileInfo::exists(QLatin1String("/.flatpak-info")))
+ tempPath += QLatin1String("/app/") + flatpakId;
return tempPath;
+ }
tempPath = QStandardPaths::writableLocation(QStandardPaths::GenericCacheLocation);
@@ -213,10 +218,9 @@ QTemporaryFile *QDBusTrayIcon::tempIcon(const QIcon &icon)
}
if (!necessary)
return nullptr;
- qreal dpr = qGuiApp->devicePixelRatio();
QTemporaryFile *ret = new QTemporaryFile(tempFileTemplate(), this);
ret->open();
- icon.pixmap(QSize(22 * dpr, 22 * dpr)).save(ret);
+ icon.pixmap(QSize(22, 22)).save(ret);
ret->close();
return ret;
}