[vlc-devel] [PATCH 2/2] contrib: qtsvg: provide support for fractional scaling
Jean-Baptiste Kempf
jb at videolan.org
Tue Feb 20 18:21:05 CET 2018
On Tue, 20 Feb 2018, at 18:05, Hugo Beauzée-Luyssen wrote:
> On Tue, Feb 20, 2018, at 5:58 PM, Pierre Lamot wrote:
> > ---
> > ...ine-Paint-correct-size-if-device-pixel-ra.patch | 30 +++++++++++++++
> > +++++++
> > contrib/src/qtsvg/rules.mak | 1 +
> > 2 files changed, 31 insertions(+)
> > create mode 100644 contrib/src/qtsvg/0002-QSvgIconEngine-Paint-correct-
> > size-if-device-pixel-ra.patch
> >
> > diff --git a/contrib/src/qtsvg/0002-QSvgIconEngine-Paint-correct-size-
> > if-device-pixel-ra.patch b/contrib/src/qtsvg/0002-QSvgIconEngine-Paint-
> > correct-size-if-device-pixel-ra.patch
> > new file mode 100644
> > index 0000000000..ec1b38941b
> > --- /dev/null
> > +++ b/contrib/src/qtsvg/0002-QSvgIconEngine-Paint-correct-size-if-
> > device-pixel-ra.patch
> > @@ -0,0 +1,30 @@
> > +From 02ed4c65618b0f27b9ccb6867ab4d633612415c8 Mon Sep 17 00:00:00 2001
> > +From: =?UTF-8?q?B=C5=82a=C5=BCej=20Szczygie=C5=82?= <spaz16 at wp.pl>
> > +Date: Sun, 26 Mar 2017 13:55:23 +0200
> > +Subject: [PATCH] QSvgIconEngine: Paint correct size if device pixel
> > ratio is
> > + fractional
> > +
> > +Use method which returns qreal. It is available since Qt 5.6.
> > +
> > +Task-number: QTBUG-59729
> > +Change-Id: Ifc1a101c8dd837597c35ce14f0314218d2882501
> > +Reviewed-by: Friedemann Kleint <Friedemann.Kleint at qt.io>
> > +---
> > + src/plugins/iconengines/svgiconengine/qsvgiconengine.cpp | 2 +-
> > + 1 file changed, 1 insertion(+), 1 deletion(-)
> > +
> > +diff --git a/src/plugins/iconengines/svgiconengine/qsvgiconengine.cpp
> > b/src/plugins/iconengines/svgiconengine/qsvgiconengine.cpp
> > +index 53e9a57..2644326 100644
> > +--- a/src/plugins/iconengines/svgiconengine/qsvgiconengine.cpp
> > ++++ b/src/plugins/iconengines/svgiconengine/qsvgiconengine.cpp
> > +@@ -227,7 +227,7 @@ void QSvgIconEngine::paint(QPainter *painter, const
> > QRect &rect,
> > + {
> > + QSize pixmapSize = rect.size();
> > + if (painter->device())
> > +- pixmapSize *= painter->device()->devicePixelRatio();
> > ++ pixmapSize *= painter->device()->devicePixelRatioF();
> > + painter->drawPixmap(rect, pixmap(pixmapSize, mode, state));
> > + }
> > +
> > +--
> > +2.14.1
> > diff --git a/contrib/src/qtsvg/rules.mak b/contrib/src/qtsvg/rules.mak
> > index 0d8d8b797b..ca34081958 100644
> > --- a/contrib/src/qtsvg/rules.mak
> > +++ b/contrib/src/qtsvg/rules.mak
> > @@ -22,6 +22,7 @@ qtsvg: qtsvg-$(QTSVG_VERSION).tar.xz .sum-qtsvg
> > $(UNPACK)
> > mv qtsvg-opensource-src-$(QTSVG_VERSION) qtsvg-$(QTSVG_VERSION)
> > $(APPLY) $(SRC)/qtsvg/0001-Force-the-usage-of-QtZlib-header.patch
> > + $(APPLY) $(SRC)/qtsvg/0002-QSvgIconEngine-Paint-correct-size-if-device-
> > pixel-ra.patch
> > $(MOVE)
> >
> > .qtsvg: qtsvg
> > --
> > 2.14.1
> >
>
> If I'm not mistaking, this can also be achieved by upgrading to Qt
> 5.6.3. Any opinion on the matter?
Please update.
>
> --
> Hugo Beauzée-Luyssen
> hugo at beauzee.fr
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
--
Jean-Baptiste Kempf - President
+33 672 704 734
More information about the vlc-devel
mailing list