diff --git a/src/core/render_widget_host_view_qt.cpp b/src/core/render_widget_host_view_qt.cpp
index 31eb0a9d8efc48f70187f5dc01194485c138e978..2cc5510aef3958d205d8afb88bb6c71cde5d0848 100644
--- a/src/core/render_widget_host_view_qt.cpp
+++ b/src/core/render_widget_host_view_qt.cpp
@@ -676,6 +676,8 @@ void RenderWidgetHostViewQt::notifyResize()
 void RenderWidgetHostViewQt::windowBoundsChanged()
 {
     m_host->SendScreenRects();
+    if (m_delegate->window())
+        m_host->NotifyScreenInfoChanged();
 }
 
 void RenderWidgetHostViewQt::windowChanged()
diff --git a/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp
index d31af2506753bef1d4999ce7be902be1a3aaa6a6..dd14d751e1a7c774e3463fa5e922173f5137a006 100644
--- a/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp
+++ b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp
@@ -254,8 +254,9 @@ void RenderWidgetHostViewQtDelegateWidget::paintGL()
         m_rootNode->appendChildNode(paintNode);
     }
 
-    m_sgRenderer->setDeviceRect(size());
-    m_sgRenderer->setViewportRect(size());
+    QSize deviceSize = size() * devicePixelRatio();
+    m_sgRenderer->setDeviceRect(deviceSize);
+    m_sgRenderer->setViewportRect(deviceSize);
     m_sgRenderer->setProjectionMatrixToRect(QRectF(QPointF(), size()));
 
     m_sgRenderer->renderScene(defaultFramebufferObject());