X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=src%2Fappwidget.cpp;h=000c6dd4b86f1512ce8ceace4b3fc5e143ab0c4e;hb=HEAD;hp=295388cc9c75afed077a1e5463acad100582871a;hpb=ccc918169d49d046c29001c21c492dfbbde063aa;p=minitube diff --git a/src/appwidget.cpp b/src/appwidget.cpp index 295388c..c9c5181 100644 --- a/src/appwidget.cpp +++ b/src/appwidget.cpp @@ -21,6 +21,9 @@ AppsWidget::AppsWidget(QWidget *parent) : QWidget(parent) { const QString ext = "deb"; #endif +#ifdef APP_MAC + setupApp("Sofa", "sofa." + ext); +#endif setupApp("Finetune", "finetune." + ext); setupApp("Musictube", "musictube." + ext); setupApp("Musique", "musique." + ext); @@ -39,7 +42,8 @@ void AppsWidget::paintEvent(QPaintEvent *e) { style()->drawPrimitive(QStyle::PE_Widget, &o, &p, this); } -AppWidget::AppWidget(const QString &name, const QString &code, QWidget *parent) : QWidget(parent), icon(0), name(name), downloadButton(0) { +AppWidget::AppWidget(const QString &name, const QString &code, QWidget *parent) + : QWidget(parent), name(name), downloadButton(nullptr) { const QString unixName = code.left(code.lastIndexOf('.')); const QString baseUrl = QLatin1String("https://") + Constants::ORG_DOMAIN; const QString filesUrl = baseUrl + QLatin1String("/files/"); @@ -53,7 +57,11 @@ AppWidget::AppWidget(const QString &name, const QString &code, QWidget *parent) icon = new QLabel(); icon->setMinimumHeight(128); layout->addWidget(icon); - const QString iconUrl = filesUrl + QLatin1String("products/") + unixName + QLatin1String(".png"); + QString pixelRatioString; + if (devicePixelRatioF() > 1.0) + pixelRatioString = '@' + QString::number(devicePixelRatio()) + 'x'; + const QString iconUrl = filesUrl + QLatin1String("products/") + unixName + pixelRatioString + + QLatin1String(".png"); QObject *reply = Http::instance().get(iconUrl); connect(reply, SIGNAL(data(QByteArray)), SLOT(iconDownloaded(QByteArray))); @@ -99,6 +107,7 @@ void AppWidget::mouseReleaseEvent(QMouseEvent *e) { void AppWidget::iconDownloaded(const QByteArray &bytes) { QPixmap pixmap; pixmap.loadFromData(bytes, "PNG"); + pixmap.setDevicePixelRatio(devicePixelRatioF()); icon->setPixmap(pixmap); }