summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@theqtcompany.com>2016-02-15 21:05:15 +0100
committerLiang Qi <liang.qi@theqtcompany.com>2016-02-15 21:05:15 +0100
commit4ef60892ce9e8dea75a31b0be7895ebf473346a9 (patch)
tree7778fdfb3460d24db63a5f15b28b138507eb1af0
parentb50d20b7057fcd808525921e56d25f75140c79cd (diff)
parenta9ac71a443260de66f720f0184646847b03fcb46 (diff)
downloadqtsvg-4ef60892ce9e8dea75a31b0be7895ebf473346a9.tar.gz
Merge remote-tracking branch 'origin/5.6' into 5.7v5.7.0-alpha1
Conflicts: .qmake.conf Change-Id: Ia508d1e3f74dd35ac28b104c0cbdacdb6fe16d6b
-rw-r--r--src/plugins/imageformats/svg/qsvgiohandler.cpp4
-rw-r--r--src/svg/doc/qtsvg.qdocconf2
-rw-r--r--src/svg/qsvghandler.cpp1
-rw-r--r--src/svg/svg.pro10
-rw-r--r--tests/auto/qicon_svg/icons/triangle.svg12
-rw-r--r--tests/auto/qicon_svg/tst_qicon_svg.cpp1
6 files changed, 22 insertions, 8 deletions
diff --git a/src/plugins/imageformats/svg/qsvgiohandler.cpp b/src/plugins/imageformats/svg/qsvgiohandler.cpp
index c6d1c11..bb68fd9 100644
--- a/src/plugins/imageformats/svg/qsvgiohandler.cpp
+++ b/src/plugins/imageformats/svg/qsvgiohandler.cpp
@@ -128,7 +128,7 @@ bool QSvgIOHandler::canRead() const
if (buf.startsWith("\x1f\x8b")) {
setFormat("svgz");
return true;
- } else if (buf.contains("<?xml") || buf.contains("<svg")) {
+ } else if (buf.contains("<?xml") || buf.contains("<svg") || buf.contains("<!--")) {
setFormat("svg");
return true;
}
@@ -257,7 +257,7 @@ bool QSvgIOHandler::supportsOption(ImageOption option) const
bool QSvgIOHandler::canRead(QIODevice *device)
{
QByteArray buf = device->peek(8);
- return buf.startsWith("\x1f\x8b") || buf.contains("<?xml") || buf.contains("<svg");
+ return buf.startsWith("\x1f\x8b") || buf.contains("<?xml") || buf.contains("<svg") || buf.contains("<!--");
}
QT_END_NAMESPACE
diff --git a/src/svg/doc/qtsvg.qdocconf b/src/svg/doc/qtsvg.qdocconf
index 181c6a7..e8460e9 100644
--- a/src/svg/doc/qtsvg.qdocconf
+++ b/src/svg/doc/qtsvg.qdocconf
@@ -39,7 +39,7 @@ sourcedirs += .. \
exampledirs += ../../../examples/svg \
snippets/
-examplesinstallpath = svg
+examplesinstallpath = qtsvg/svg
imagedirs += images
diff --git a/src/svg/qsvghandler.cpp b/src/svg/qsvghandler.cpp
index ac9425d..4e78b98 100644
--- a/src/svg/qsvghandler.cpp
+++ b/src/svg/qsvghandler.cpp
@@ -414,6 +414,7 @@ static const char * QSvgStyleSelector_nodeString[] = {
"rect",
"text",
"textarea",
+ "tspan",
"use",
"video"
};
diff --git a/src/svg/svg.pro b/src/svg/svg.pro
index f2906ce..83e76b7 100644
--- a/src/svg/svg.pro
+++ b/src/svg/svg.pro
@@ -46,10 +46,10 @@ wince*: {
contains(QT_CONFIG, system-zlib) {
if(unix|mingw): LIBS_PRIVATE += -lz
- else: LIBS += zdll.lib
+ else {
+ isEmpty(ZLIB_LIBS): LIBS += zdll.lib
+ else: LIBS += $$ZLIB_LIBS
+ }
} else {
- git_build: \
- INCLUDEPATH += $$[QT_INSTALL_HEADERS/get]/QtZlib
- else: \
- INCLUDEPATH += $$[QT_INSTALL_HEADERS/src]/QtZlib
+ QT_PRIVATE += zlib-private
}
diff --git a/tests/auto/qicon_svg/icons/triangle.svg b/tests/auto/qicon_svg/icons/triangle.svg
new file mode 100644
index 0000000..e858490
--- /dev/null
+++ b/tests/auto/qicon_svg/icons/triangle.svg
@@ -0,0 +1,12 @@
+<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In -->
+<svg version="1.1"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/"
+ x="0px" y="0px" width="39.2px" height="39.2px" viewBox="0 0 39.2 39.2" style="enable-background:new 0 0 39.2 39.2;"
+ xml:space="preserve">
+<style type="text/css">
+ .st1{fill:#1B1E23;}
+</style>
+<defs>
+</defs>
+<polygon class="st1" points="15.3,11.3 29.2,19.6 15.3,27.9 "/>
+</svg>
diff --git a/tests/auto/qicon_svg/tst_qicon_svg.cpp b/tests/auto/qicon_svg/tst_qicon_svg.cpp
index 45c4c4c..2271f21 100644
--- a/tests/auto/qicon_svg/tst_qicon_svg.cpp
+++ b/tests/auto/qicon_svg/tst_qicon_svg.cpp
@@ -55,6 +55,7 @@ void tst_QIcon_Svg::initTestCase()
QFAIL("Can't find images directory!");
if (!QImageReader::supportedImageFormats().contains("svg"))
QFAIL("SVG support is not available");
+ QCOMPARE(QImageReader::imageFormat(prefix + "triangle.svg"), QByteArray("svg"));
}
void tst_QIcon_Svg::svgActualSize()