| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Fixes: oss-fuzz-24146
Pick-to: 5.12 5.15
Change-Id: I52a974e6a0694fb4afb50d932b2e99917c3034b2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
| |
Fixes: oss-fuzz-23731
Pick-to: 5.15 5.12
Change-Id: Ib21a32a30f7a204d263e6710f17567d91c6aae79
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-84469
Change-Id: I8c3e80c77422abeb23fff747bf4ca479ff0d35b3
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
| |
QTextStream writes in UTF-8 by default now anyway.
Change-Id: Idb94484b888bfe21231fe3f34b33eaab1d33ef78
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
|
|
|
|
|
| |
Change-Id: Ide4a91b7f0d1a9728051434c41bc57bf057552d8
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
| |
Change-Id: I6f444b939e14263a5f9f4ac7fdfcd0f45ccaa453
Reviewed-by: Leander Beernaert <leander.beernaert@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|\
| |
| |
| | |
Change-Id: I35cfe1a52ec4a02dccc0895e3b4a40bd2ffe7295
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-81628
Change-Id: I31f5ffeff1e20f2c77a67325e58a0522d25cb1b7
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][QSvgRenderer] Introduced aspect ratio mode property, so
that rendering may be set to preserve the view box aspect ratio.
Task-number: QTBUG-81259
Change-Id: I9802788cdaf2c30974c1ffc34ad5b67cdc74ed57
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |\
| | |
| | |
| | | |
Change-Id: I987599c388f414928aabf6a193a8250c27f4f60d
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This was introduced as non-optional behavior for 5.14.0, but caused
many regressions. This patch reverts that, and instead prepares for
introducing it as an opt-in feature in Qt 5.15.
[ChangeLog][QSVGRenderer] In Qt 5.14.0, rendering would keep aspect
ratio implied by the viewbox, independently of the specified target
area. This caused many regressions with existing code, so is reverted
now in 5.14.1. The feature will instead be available as an opt-in in
Qt 5.15.
Task-number: QTBUG-81259
Change-Id: I3efa2db864eb80ee00e8a067e56d9912bab36442
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
| |/
| |
| |
| |
| |
| | |
Task-number: QTBUG-46653
Change-Id: I9944b62141d7054e3935000a819bebc5fd54df6c
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The recent introduction of keepAspectRation scaling led to wrong
output (outside bounds) in the case of an explicitly specified target
bounds rect, i.e. QSVGRenderer::render(QPainter *p, QRectF bounds).
Fix by reverting to old code path in this case, i.e. allow the user to
override the keepAspectRatio behavior by explicitly specifying target
bounds.
As a driveby, also fix the keepAspectRatio code path in case of a
target rect having non-zero x/y coordinates. Now the fix above means
that this will never happen in the code as it stands, but it may come
in handy later.
[ChangeLog][QSVGRenderer] From Qt 5.14.0, normal rendering will keep
aspect ratio implied by the viewbox. The render() methods taking an
explicit target bounds QRectF parameter can now be used to override
that behavior. They will scale the output to the bounds while ignoring
aspect ratio, as was the default rendering prior to 5.14.0.
Fixes: QTBUG-80888
Change-Id: I399b05ca50d290b8e4b01bdc47b5b6f74c890c9a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
BC file built against 5.14.0 added.
Change-Id: Ib26e7a17413883495ada0fa12c4ad2fd9e066359
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is a modification of 14fa4591eb34a35cf3d485fd901e3f1e2caa7770
That patch corrected the handling of the view box when rendering an
entire SVG document. However, contrary to intention stated in the
comment of that patch, it turns out that the new viewbox handling code
path can be taken also for the case of rendering only a single element
by id. Instead, we want to keep the original behavior where the
element's origin bounds are transformed to fit into the user requested
target bounds, allowing non-proportional scaling.
Since the render-single-element case is easily and uniqely
identifiable by the sourceRect parameter being non-null, just add an
explicit check for that to the code path branching.
Done-with: Eirik Aavitsland <eirik.aavitsland@qt.io>
Fixes: QTBUG-79933
Change-Id: I64a35bbb193db22c33670b48ea165a91df8e719e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is a modification of14fa4591eb34a35cf3d485fd901e3f1e2caa7770.
That change correctly implemented support for scaling and centering
viewBox. However, the viewBox scaling and x-min/y-min translation was
applied in the wrong order, so SVGs with a non-zero x-min/y-min
viewBox would be rendered with an offset.
The autotest reflected this error, and is also fixed here. (In user
space, the black rectangle's upper left corner (0,0) is in the center
of the viewBox and so should end up in the center of the produced
image, independently of the scaling. All other tested SVG renderers
place it there.)
This change fixes all the reported regression cases from the above
commit, while not re-breaking the original cases fixed by that commit.
Fixes: QTBUG-79333
Fixes: QTBUG-78200
Task-number: QTBUG-70256
Change-Id: I0d3394e3caf6ec7edf16a10992c2fbfdac7398e5
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: Ie5198bc76688e40170a8b0a401435f97898bb818
Reviewed-by: Qt CMake Build Bot
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|\ \
| |/
| |
| |
| |
| | |
Removed dependencies.yaml.
Change-Id: I4a0c5c1be5781ee521e9b54d720d27f386870324
|
| |\
| | |
| | |
| | | |
Change-Id: I0ac8513a9a0bc6fc0ff03ad27e0f9ca5af1a2fcc
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
BC file added
Change-Id: I1d0d1950c35244b7968a5217c27ba38f498034d4
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|\ \ \
| |/ /
| | |
| | | |
Change-Id: I886cfdcd8bd124a02c54f23b694799610f60d7bd
|
| |\ \
| | |/
| | |
| | | |
Change-Id: I3e08aa8666c4e74b70606a91bc2bc5653fac4003
|
| | |\
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
.qmake.conf
Change-Id: If39eda43ff21d841aaa24ffed8b5793ff1239cce
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
These tests require access to local file system and are not
written to be portable to remote devices. Since there is no
real platform-dependency in this, testing them on other
platforms is sufficient, so we will just skip it on Android
rather than spend time on it.
Task-number: QTBUG-73624
Change-Id: Ic11b69d2eb73e0cd264b153c9870dd7923e1336d
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Assets have to be included in the resources in order to be accessible
when testing on a remote device.
Task-number: QTBUG-73625
Change-Id: I80332b6492bffc01c0157918b9e6abbc2b87a43b
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Platforms like Android require assets to be bundled with
the app. We include the reference SVGs as resources to work
around this.
Task-number: QTBUG-73623
Change-Id: Id9cc7a7d575da5adbe73a3392419fd74a1ec1bbd
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Re-generate the CMakeLists.txt to ensure the PREFIX is specified.
Change-Id: I50fad8cdb10715ff53d0e6451b252c81b6c42c4a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This fixes the CMake configuration to succeed if the Xml package is
not built.
Change-Id: I062ef1dc70c3eef286eaadb62a5fe6b7c827f3db
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|\ \ \ \
| |/ / /
| | | |
| | | | |
Change-Id: Icb0da709c1cb8d2bdc2f33edfe656b7821cb148a
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The presence of the viewBox attribute in the svg tag implies the
presence of the preserveAspectRatio attribute as well. It defaults to
scaling the view box to the view port while preserving the aspect ratio
and the box is also centered.
This patch does not implement the full preserveAspectRatio attribute,
but it does implement the default of aspect ratio preservation and
centering, as that is what caused the rendering error in the linked
task.
This causes some tests in the SVG Tiny 1.2 test suite to differ. This is
visible using the rendertestsuite helper program (see other change).
In particular it corrects the rendering of struct-svg-203-t.svg to
correctly center the text and avoid scaling it.
For animate-elem-38-t.svg the rendering improved by making the entire
text visible, as in the reference. The same applies to
media-video-216-t.svg. In both rendering the scaling changes slightly.
Done-With: Rainer Keller <rainer.keller@qt.io>
Fixes: QTBUG-70256
Change-Id: I9142c511890765993ee3e316f0383550919fdcd4
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |\ \
| | |/
| | |
| | | |
Change-Id: I4a7a5ad6cd164f0d440217566bd647ecde4fddfb
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: If2b13c3dc4a09ce6d18aff97855179172f92878b
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
|
| |\ \
| | |/
| | |
| | | |
Change-Id: Id1bdcd52b3c4553e882de825c769bd7643745dce
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
A reference loop with at least three elements would lead to endless
recursion.
Fixes: QTBUG-74189
Change-Id: Ie3c1b32da0e98e9218dc387dd3210666018a92e1
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |\ \
| | |/
| | |
| | | |
Change-Id: I53ec3fb5c2aa7aa953628d2ef56fead24ce0160f
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Make the parsing of IRI references tighter, and avoid freeing
styles when inserting a duplicate id.
Fixes: QTBUG-74104
Change-Id: I3a12fcf09ce1c55c135a4209817413ed8af75dec
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix:
qsvgiconengine.cpp: In member function ‘virtual QPixmap QSvgIconEngine::pixmap(const QSize&, QIcon::Mode, QIcon::State)’:
qsvgiconengine.cpp:200:38: warning: ‘static bool QPixmapCache::find(const QString&, QPixmap&)’ is deprecated: Use bool find(const QString &, QPixmap *) instead [-Wdeprecated-declarations]
tst_qsvgrenderer.cpp:479:54: warning: ‘const QMatrix& QPainter::worldMatrix() const’ is deprecated: Use worldTransform() instead [-Wdeprecated-declarations]
...
glwidget.cpp: In member function ‘void GLWidget::draw()’:
glwidget.cpp:231:41: warning: ‘int QFontMetrics::width(const QString&, int) const’ is deprecated: Use QFontMetrics::horizontalAdvance [-Wdeprecated-declarations]
glwidget.cpp:232:41: warning: ‘int QFontMetrics::width(const QString&, int) const’ is deprecated: Use QFontMetrics::horizontalAdvance [-Wdeprecated-declarations]
fluidlauncher.cpp:71:65: warning: ‘const QRect QDesktopWidget::screenGeometry(int) const’ is deprecated: Use QGuiApplication::screens() [-Wdeprecated-declarations]
Change-Id: Iae20d950c3118d05f91202c8020dbd81fa73b48f
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Updated qsvg tests with the fix for relative paths in pro2cmake.py.
qsvgplugin now passes without issues.
Change-Id: I6dd13bf85fd6b3ea781fc2ed251cb57a82e10ff5
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|/
|
|
|
|
|
|
| |
Task-number: QTBUG-74135
Done-With: Alexandru Croitor <alexandru.croitor@qt.io>
Done-With: Liang Qi <liang.qi@qt.io>
Change-Id: I81fdc3d06f53e78182352214ef4687924dfc6fb6
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|\
| |
| |
| | |
Change-Id: I4b40124deaa859a56442bfd17568f8053368af82
|
| |
| |
| |
| |
| |
| |
| | |
Binary compatibility file added.
Change-Id: I6661a0f32ce0c76d8a9d9b8ef6adcd4d89235ea7
Reviewed-by: Sergio Ahumada <sahumada@texla.cl>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
According to https://www.w3.org/TR/SVG/styling.html#StyleElement, `type`
can be omitted.
> If the attribute is not specified, then the style sheet language is assumed to be CSS.
Original-Author: Christoph Feck
Fixes: QTBUG-58326
Fixes: QTBUG-69378
Change-Id: Ic3d0e8db99da8c81e5a01c0dda33fb38428e38d5
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-16198
Change-Id: I26bf48cbac39af0fae490ed21579e8de326cd1a3
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
SVG <use> elements may refer to a node that is defined later in the
file. The parser would then fail to resolve the link. Implement
delayed link resolution in the parser to handle such cases.
Task-number: QTBUG-69694
Change-Id: I94ffb3511dbd0fac822bb56991415b2d99ccf90e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
| |
The parsing did not check for end of input.
Change-Id: I56a478877d242146395977b767511425d2b8ced1
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
| |
A follow-up of 9d078c8f147ea875e862360b0d7480201fbbcff7 in qtqa repo.
Change-Id: Iefdd437266d3c8df0d8814d13ec660aa9cba463a
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
|
|
|
|
|
|
|
| |
Binary compatibility file for bic test added.
Change-Id: I78878fa96a9c8bc6960076d4350fa03802911a9b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
When width or height is specified in percent, it is supposed to be
relative to the viewport.
https://www.w3.org/TR/SVG/coords.html#Units
Task-number: QTBUG-2279
Change-Id: Ia1597b88d4e1c705a6755db788a18cf790d5ee97
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
|
|
|
|
| |
Change-Id: I14e42b9f55f80e7f2098ba9fcb3c9c47a81446ab
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In 4a9470e55ce08752501868c60762268fdf2c44af there was introduced
specific isNull() implementation for QSvgIconEngine. But the existing
check was not sufficient for the scenarios where the QIcon is
constructed by deserialization from QDataStream (from previously
serialized valid svg QIcon).
We also need to check the svgBuffers as the previously serialized
svgFiles are silently ignored by QSvgIconEngine::read().
Change-Id: Id64ce233baead053c8b5ca61f1d416e46a8c6088
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: David Edmundson <davidedmundson@kde.org>
|