From 333a302974216a8f943696f7916a4a944f89b51b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BCri=20Valdmann?= Date: Wed, 8 Jul 2020 10:29:54 +0200 Subject: Implement more Compositor methods for software mode Add implementations of devicePixelRatio, textureSize, hasAlphaChannel also for software mode. Rename textureSize to just size. Change-Id: I5c515e4fed3330e0ecbfc17e7ec092245a13e619 Reviewed-by: Michal Klocek --- src/webengine/render_widget_host_view_qt_delegate_quick.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'src/webengine/render_widget_host_view_qt_delegate_quick.cpp') diff --git a/src/webengine/render_widget_host_view_qt_delegate_quick.cpp b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp index 9ed660f2e..60340079f 100644 --- a/src/webengine/render_widget_host_view_qt_delegate_quick.cpp +++ b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp @@ -357,17 +357,14 @@ QSGNode *RenderWidgetHostViewQtDelegateQuick::updatePaintNode(QSGNode *oldNode, comp->swapFrame(); + QSize texSize = comp->size(); + QSizeF texSizeInDips = QSizeF(texSize) / comp->devicePixelRatio(); + node->setRect(QRectF(QPointF(0, 0), texSizeInDips)); + if (comp->type() == Compositor::Type::Software) { QImage image = comp->image(); - float pixPerDip = comp->devicePixelRatio(); - QSizeF sizeInDips = QSizeF(image.size()) / pixPerDip; - node->setRect(QRectF(QPointF(0, 0), sizeInDips)); node->setTexture(win->createTextureFromImage(image)); } else if (comp->type() == Compositor::Type::OpenGL) { - QSize texSize = comp->textureSize(); - float pixPerDip = comp->devicePixelRatio(); - QSizeF sizeInDips = QSizeF(texSize) / pixPerDip; - node->setRect(QRectF(QPointF(0, 0), sizeInDips)); QQuickWindow::CreateTextureOptions texOpts; if (comp->hasAlphaChannel()) texOpts.setFlag(QQuickWindow::TextureHasAlphaChannel); -- cgit v1.2.3