summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan-Marek Glogowski <glogow@fbihome.de>2021-04-11 17:21:57 +0200
committerMichael Weghorn <m.weghorn@posteo.de>2021-04-12 08:09:18 +0200
commit3f204ca2fed7614e1e12180af5ce5bfd88249eb7 (patch)
tree437daf5a3c0c0cb319de5d454011dc8a0ede1f10
parenttdf#140404 Qt ignore "unchanged" clipboard events (diff)
downloadcore-3f204ca2fed7614e1e12180af5ce5bfd88249eb7.tar.gz
core-3f204ca2fed7614e1e12180af5ce5bfd88249eb7.zip
tdf#141623 Qt5+cairo init surface with widget size
The QFont based rendering path directly uses the widgets size to initialize the QImage buffer image, so do the same for the Cairo surface, instead of the arbitrarily size of 640x480. Change-Id: I91326dab67cbbb5e75b78b02c34eaca61ad26482 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113955 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de> (cherry picked from commit 91c883e75436210ca8af95df1ca597caeeda8703) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113869 Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
-rw-r--r--vcl/qt5/Qt5Frame.cxx8
1 files changed, 4 insertions, 4 deletions
diff --git a/vcl/qt5/Qt5Frame.cxx b/vcl/qt5/Qt5Frame.cxx
index cbe31b8b5409..b398e9a5cf3b 100644
--- a/vcl/qt5/Qt5Frame.cxx
+++ b/vcl/qt5/Qt5Frame.cxx
@@ -290,11 +290,11 @@ void Qt5Frame::Damage(sal_Int32 nExtentsX, sal_Int32 nExtentsY, sal_Int32 nExten
void Qt5Frame::InitQt5SvpGraphics(Qt5SvpGraphics* pQt5SvpGraphics)
{
- int width = 640;
- int height = 480;
+ QSize aSize = m_pQWidget->size() * devicePixelRatioF();
m_pSvpGraphics = pQt5SvpGraphics;
- m_pSurface.reset(cairo_image_surface_create(CAIRO_FORMAT_ARGB32, width, height));
- m_pSvpGraphics->setSurface(m_pSurface.get(), basegfx::B2IVector(width, height));
+ m_pSurface.reset(
+ cairo_image_surface_create(CAIRO_FORMAT_ARGB32, aSize.width(), aSize.height()));
+ m_pSvpGraphics->setSurface(m_pSurface.get(), basegfx::B2IVector(aSize.width(), aSize.height()));
cairo_surface_set_user_data(m_pSurface.get(), Qt5SvpGraphics::getDamageKey(), &m_aDamageHandler,
nullptr);
}