fixed QR image generation in retina display mode

This commit is contained in:
Luis Ángel San Martín 2016-03-20 20:03:40 +01:00
parent 20e56b2e13
commit a60d3dffd8

View File

@ -288,7 +288,8 @@ void ServerConfigDialog::generateQR(const QString & serverAddress)
qrCode->clear(); qrCode->clear();
qrGenerator = new QProcess(); qrGenerator = new QProcess();
QStringList attributes; QStringList attributes;
attributes << "-o" << "-" /*QCoreApplication::applicationDirPath()+"/utils/tmp.png"*/ << "-s" << "8" << "-l" << "H" << "-m" << "0" << serverAddress; int pixels = devicePixelRatio() * 8;
attributes << "-o" << "-" /*QCoreApplication::applicationDirPath()+"/utils/tmp.png"*/ << "-s" << QString::number(pixels) << "-l" << "H" << "-m" << "0" << serverAddress;
connect(qrGenerator,SIGNAL(finished(int,QProcess::ExitStatus)),this,SLOT(updateImage(void))); connect(qrGenerator,SIGNAL(finished(int,QProcess::ExitStatus)),this,SLOT(updateImage(void)));
connect(qrGenerator,SIGNAL(error(QProcess::ProcessError)),this,SLOT(openingError(QProcess::ProcessError))); //TODO: implement openingError connect(qrGenerator,SIGNAL(error(QProcess::ProcessError)),this,SLOT(openingError(QProcess::ProcessError))); //TODO: implement openingError
#if defined Q_OS_UNIX && !defined Q_OS_MAC #if defined Q_OS_UNIX && !defined Q_OS_MAC
@ -312,6 +313,8 @@ void ServerConfigDialog::updateImage()
pMask.fill( QColor(66, 66, 66) ); pMask.fill( QColor(66, 66, 66) );
pMask.setMask( p.createMaskFromColor( Qt::white ) ); pMask.setMask( p.createMaskFromColor( Qt::white ) );
pMask.setDevicePixelRatio(devicePixelRatio());
*qrCodeImage = pMask; *qrCodeImage = pMask;
qrCode->setPixmap(*qrCodeImage); qrCode->setPixmap(*qrCodeImage);