QImage ApplicationScreenshotProvider::requestImage(const QString &imageId, QSize *size,
const QSize &requestedSize)
{
qCDebug(QTMIR_APPLICATIONS) << "ApplicationScreenshotProvider::requestImage - imageId=" << imageId;
QImage screenshotImage;
QImage fullSizeScreenshot = QImage(4, 4,
QImage::Format_ARGB32_Premultiplied).mirrored();
if (requestedSize.isValid()) {
*size = requestedSize.boundedTo(fullSizeScreenshot.size());
screenshotImage = fullSizeScreenshot.scaled(*size, Qt::IgnoreAspectRatio,
Qt::SmoothTransformation);
} else {
*size = fullSizeScreenshot.size();
screenshotImage = fullSizeScreenshot;
}
return screenshotImage;
}