diff --git a/ui/TrayIcon.cpp b/ui/TrayIcon.cpp index f0a367a..4eac5b8 100644 --- a/ui/TrayIcon.cpp +++ b/ui/TrayIcon.cpp @@ -3,15 +3,22 @@ #include QIcon TrayIcon::GetIcon(TrayIcon::TrayIconStatus status) { - auto icon = QIcon::fromTheme("nekoray"); - auto pixmap = QPixmap("../nekoray.png"); - if (!pixmap.isNull()) icon = QIcon(pixmap); - pixmap = QPixmap("./nekoray.png"); - if (!pixmap.isNull()) icon = QIcon(pixmap); + QPixmap pixmap; - if (status == TrayIconStatus::NONE) return icon; + // software embedded icon + auto pixmap_read = QPixmap(":/nekoray/nekoray.png"); + if (!pixmap_read.isNull()) pixmap = pixmap_read; + + // software pack icon + pixmap_read = QPixmap("../nekoray.png"); + if (!pixmap_read.isNull()) pixmap = pixmap_read; + + // user icon + pixmap_read = QPixmap("./nekoray.png"); + if (!pixmap_read.isNull()) pixmap = pixmap_read; + + if (status == TrayIconStatus::NONE) return pixmap; - pixmap = icon.pixmap(icon.availableSizes().first()); auto p = QPainter(&pixmap); auto side = pixmap.width();