diff options
author | Liang Qi <liang.qi@qt.io> | 2017-03-13 09:50:43 +0100 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2017-03-13 15:55:44 +0100 |
commit | d51c3ecf8ef6e28557c66745f50a223cc5b1ce54 (patch) | |
tree | 023a1ecaa944152e08ba11291ec7aadc12f59dad /src/gui | |
parent | f06f1adb6cc3835793a15eafa2d5a3affad712a2 (diff) | |
parent | 3a1f4b186d8ce79717da37f808ff9a4b3e949d9c (diff) |
Merge remote-tracking branch 'origin/5.8' into 5.9
Conflicts:
examples/network/network.pro
mkspecs/features/mac/default_post.prf
src/corelib/io/qfilesystemengine_win.cpp
src/corelib/io/qprocess.cpp
src/corelib/io/qprocess.h
src/corelib/io/qprocess_p.h
src/corelib/io/qprocess_unix.cpp
src/corelib/io/qprocess_win.cpp
src/corelib/thread/qmutex.cpp
src/platformsupport/fontdatabases/windows/windows.pri
src/plugins/platforms/eglfs/eglfsdeviceintegration.pro
tests/auto/corelib/io/io.pro
Change-Id: I8a27e0e141454818bba9c433200a4e84a88d147e
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/configure.json | 17 | ||||
-rw-r--r-- | src/gui/image/qpixmapcache.cpp | 7 | ||||
-rw-r--r-- | src/gui/kernel/qguiapplication.cpp | 6 | ||||
-rw-r--r-- | src/gui/kernel/qplatformintegrationfactory.cpp | 8 | ||||
-rw-r--r-- | src/gui/kernel/qplatformthemefactory.cpp | 6 | ||||
-rw-r--r-- | src/gui/math3d/qmatrix4x4.h | 5 | ||||
-rw-r--r-- | src/gui/math3d/qquaternion.h | 15 | ||||
-rw-r--r-- | src/gui/math3d/qvector2d.h | 4 | ||||
-rw-r--r-- | src/gui/math3d/qvector3d.h | 4 | ||||
-rw-r--r-- | src/gui/math3d/qvector4d.h | 4 | ||||
-rw-r--r-- | src/gui/opengl/qopenglframebufferobject.cpp | 1 | ||||
-rw-r--r-- | src/gui/painting/qpainter.cpp | 2 | ||||
-rw-r--r-- | src/gui/painting/qtransform.h | 6 | ||||
-rw-r--r-- | src/gui/text/qdistancefield.cpp | 4 |
14 files changed, 47 insertions, 42 deletions
diff --git a/src/gui/configure.json b/src/gui/configure.json index a8ae656bcb..9b86b16b45 100644 --- a/src/gui/configure.json +++ b/src/gui/configure.json @@ -45,8 +45,7 @@ "xkb-config-root": "string", "xkbcommon": { "type": "enum", "values": [ "no", "qt", "system" ] }, "xkbcommon-evdev": "boolean", - "xkbcommon-x11": { "type": "enum", "name": "xkbcommon", "values": [ "no", "qt", "system" ] }, - "xrender": "boolean" + "xkbcommon-x11": { "type": "enum", "name": "xkbcommon", "values": [ "no", "qt", "system" ] } } }, @@ -295,13 +294,6 @@ "sources": [ { "type": "pkgConfig", "args": "xkbcommon xkbcommon-x11 >= 0.4.1" } ] - }, - "xrender": { - "label": "XRender", - "test": "x11/xrender", - "sources": [ - "-lXrender" - ] } }, @@ -798,11 +790,6 @@ "condition": "tests.xlib", "output": [ "privateFeature" ] }, - "xrender": { - "label": "Xrender", - "condition": "libs.xrender", - "output": [ "privateFeature", "feature" ] - }, "texthtmlparser": { "label": "HtmlParser", "purpose": "Provides a parser for HTML.", @@ -1138,7 +1125,7 @@ QMAKE_LIBDIR_OPENGL[_ES2] and QMAKE_LIBS_OPENGL[_ES2] in the mkspec for your pla "section": "X11", "condition": "features.xcb", "entries": [ - "system-xcb", "egl_x11", "xinput2", "xkb", "xlib", "xrender", "xcb-render", "xcb-glx", "xcb-xlib", "xkbcommon-system" + "system-xcb", "egl_x11", "xinput2", "xkb", "xlib", "xcb-render", "xcb-glx", "xcb-xlib", "xkbcommon-system" ] }, { diff --git a/src/gui/image/qpixmapcache.cpp b/src/gui/image/qpixmapcache.cpp index 73448943e1..625e145647 100644 --- a/src/gui/image/qpixmapcache.cpp +++ b/src/gui/image/qpixmapcache.cpp @@ -341,7 +341,6 @@ bool QPMCache::insert(const QString& key, const QPixmap &pixmap, int cost) } else { //Insertion failed we released the new allocated key cacheKeys.remove(key); - releaseKey(cacheKey); } return success; } @@ -355,9 +354,6 @@ QPixmapCache::Key QPMCache::insert(const QPixmap &pixmap, int cost) theid = startTimer(flush_time); t = false; } - } else { - //Insertion failed we released the key and return an invalid one - releaseKey(cacheKey); } return cacheKey; } @@ -377,9 +373,6 @@ bool QPMCache::replace(const QPixmapCache::Key &key, const QPixmap &pixmap, int t = false; } const_cast<QPixmapCache::Key&>(key) = cacheKey; - } else { - //Insertion failed we released the key - releaseKey(cacheKey); } return success; } diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp index c057fccade..334dc4a288 100644 --- a/src/gui/kernel/qguiapplication.cpp +++ b/src/gui/kernel/qguiapplication.cpp @@ -99,7 +99,7 @@ #include <QtGui/QClipboard> #endif -#ifndef QT_NO_LIBRARY +#if QT_CONFIG(library) #include <QtCore/QLibrary> #endif @@ -1449,7 +1449,7 @@ void QGuiApplicationPrivate::init() session_manager = new QSessionManager(q, session_id, session_key); #endif -#ifndef QT_NO_LIBRARY +#if QT_CONFIG(library) if (qEnvironmentVariableIntValue("QT_LOAD_TESTABILITY") > 0) loadTestability = true; @@ -1469,7 +1469,7 @@ void QGuiApplicationPrivate::init() } #else Q_UNUSED(loadTestability); -#endif // QT_NO_LIBRARY +#endif // QT_CONFIG(library) if (layout_direction == Qt::LayoutDirectionAuto || force_reverse) QGuiApplication::setLayoutDirection(qt_detectRTLLanguage() ? Qt::RightToLeft : Qt::LeftToRight); diff --git a/src/gui/kernel/qplatformintegrationfactory.cpp b/src/gui/kernel/qplatformintegrationfactory.cpp index 1e04a673eb..3fcf9014a7 100644 --- a/src/gui/kernel/qplatformintegrationfactory.cpp +++ b/src/gui/kernel/qplatformintegrationfactory.cpp @@ -51,14 +51,14 @@ QT_BEGIN_NAMESPACE Q_GLOBAL_STATIC_WITH_ARGS(QFactoryLoader, loader, (QPlatformIntegrationFactoryInterface_iid, QLatin1String("/platforms"), Qt::CaseInsensitive)) -#ifndef QT_NO_LIBRARY +#if QT_CONFIG(library) Q_GLOBAL_STATIC_WITH_ARGS(QFactoryLoader, directLoader, (QPlatformIntegrationFactoryInterface_iid, QLatin1String(""), Qt::CaseInsensitive)) -#endif // !QT_NO_LIBRARY +#endif // QT_CONFIG(library) QPlatformIntegration *QPlatformIntegrationFactory::create(const QString &platform, const QStringList ¶mList, int &argc, char **argv, const QString &platformPluginPath) { -#ifndef QT_NO_LIBRARY +#if QT_CONFIG(library) // Try loading the plugin from platformPluginPath first: if (!platformPluginPath.isEmpty()) { QCoreApplication::addLibraryPath(platformPluginPath); @@ -81,7 +81,7 @@ QPlatformIntegration *QPlatformIntegrationFactory::create(const QString &platfor QStringList QPlatformIntegrationFactory::keys(const QString &platformPluginPath) { QStringList list; -#ifndef QT_NO_LIBRARY +#if QT_CONFIG(library) if (!platformPluginPath.isEmpty()) { QCoreApplication::addLibraryPath(platformPluginPath); list = directLoader()->keyMap().values(); diff --git a/src/gui/kernel/qplatformthemefactory.cpp b/src/gui/kernel/qplatformthemefactory.cpp index 223d7344e3..447d385abe 100644 --- a/src/gui/kernel/qplatformthemefactory.cpp +++ b/src/gui/kernel/qplatformthemefactory.cpp @@ -51,7 +51,7 @@ QT_BEGIN_NAMESPACE Q_GLOBAL_STATIC_WITH_ARGS(QFactoryLoader, loader, (QPlatformThemeFactoryInterface_iid, QLatin1String("/platformthemes"), Qt::CaseInsensitive)) -#ifndef QT_NO_LIBRARY +#if QT_CONFIG(library) Q_GLOBAL_STATIC_WITH_ARGS(QFactoryLoader, directLoader, (QPlatformThemeFactoryInterface_iid, QLatin1String(""), Qt::CaseInsensitive)) #endif @@ -60,7 +60,7 @@ QPlatformTheme *QPlatformThemeFactory::create(const QString& key, const QString { QStringList paramList = key.split(QLatin1Char(':')); const QString platform = paramList.takeFirst().toLower(); -#ifndef QT_NO_LIBRARY +#if QT_CONFIG(library) // Try loading the plugin from platformPluginPath first: if (!platformPluginPath.isEmpty()) { QCoreApplication::addLibraryPath(platformPluginPath); @@ -83,7 +83,7 @@ QStringList QPlatformThemeFactory::keys(const QString &platformPluginPath) { QStringList list; -#ifndef QT_NO_LIBRARY +#if QT_CONFIG(library) if (!platformPluginPath.isEmpty()) { QCoreApplication::addLibraryPath(platformPluginPath); list += directLoader()->keyMap().values(); diff --git a/src/gui/math3d/qmatrix4x4.h b/src/gui/math3d/qmatrix4x4.h index e143884f9d..aca685920e 100644 --- a/src/gui/math3d/qmatrix4x4.h +++ b/src/gui/math3d/qmatrix4x4.h @@ -212,6 +212,9 @@ private: friend class QGraphicsRotation; }; +QT_WARNING_PUSH +QT_WARNING_DISABLE_CLANG("-Wfloat-equal") +QT_WARNING_DISABLE_GCC("-Wfloat-equal") Q_DECLARE_TYPEINFO(QMatrix4x4, Q_MOVABLE_TYPE); inline QMatrix4x4::QMatrix4x4 @@ -1093,6 +1096,8 @@ inline void QMatrix4x4::viewport(const QRectF &rect) viewport(rect.x(), rect.y(), rect.width(), rect.height()); } +QT_WARNING_POP + #ifndef QT_NO_DEBUG_STREAM Q_GUI_EXPORT QDebug operator<<(QDebug dbg, const QMatrix4x4 &m); #endif diff --git a/src/gui/math3d/qquaternion.h b/src/gui/math3d/qquaternion.h index 808e0ee6d7..eff427117f 100644 --- a/src/gui/math3d/qquaternion.h +++ b/src/gui/math3d/qquaternion.h @@ -168,7 +168,9 @@ inline QQuaternion::QQuaternion() : wp(1.0f), xp(0.0f), yp(0.0f), zp(0.0f) {} inline QQuaternion::QQuaternion(float aScalar, float xpos, float ypos, float zpos) : wp(aScalar), xp(xpos), yp(ypos), zp(zpos) {} - +QT_WARNING_PUSH +QT_WARNING_DISABLE_CLANG("-Wfloat-equal") +QT_WARNING_DISABLE_GCC("-Wfloat-equal") inline bool QQuaternion::isNull() const { return wp == 0.0f && xp == 0.0f && yp == 0.0f && zp == 0.0f; @@ -179,6 +181,12 @@ inline bool QQuaternion::isIdentity() const return wp == 1.0f && xp == 0.0f && yp == 0.0f && zp == 0.0f; } +inline bool operator==(const QQuaternion &q1, const QQuaternion &q2) +{ + return q1.wp == q2.wp && q1.xp == q2.xp && q1.yp == q2.yp && q1.zp == q2.zp; +} +QT_WARNING_POP + inline float QQuaternion::x() const { return xp; } inline float QQuaternion::y() const { return yp; } inline float QQuaternion::z() const { return zp; } @@ -277,11 +285,6 @@ inline QQuaternion &QQuaternion::operator/=(float divisor) return *this; } -inline bool operator==(const QQuaternion &q1, const QQuaternion &q2) -{ - return q1.wp == q2.wp && q1.xp == q2.xp && q1.yp == q2.yp && q1.zp == q2.zp; -} - inline bool operator!=(const QQuaternion &q1, const QQuaternion &q2) { return !operator==(q1, q2); diff --git a/src/gui/math3d/qvector2d.h b/src/gui/math3d/qvector2d.h index d2724c9498..bdb56c9c1f 100644 --- a/src/gui/math3d/qvector2d.h +++ b/src/gui/math3d/qvector2d.h @@ -204,6 +204,9 @@ inline QVector2D &QVector2D::operator/=(const QVector2D &vector) return *this; } +QT_WARNING_PUSH +QT_WARNING_DISABLE_CLANG("-Wfloat-equal") +QT_WARNING_DISABLE_GCC("-Wfloat-equal") Q_DECL_CONSTEXPR inline bool operator==(const QVector2D &v1, const QVector2D &v2) { return v1.xp == v2.xp && v1.yp == v2.yp; @@ -213,6 +216,7 @@ Q_DECL_CONSTEXPR inline bool operator!=(const QVector2D &v1, const QVector2D &v2 { return v1.xp != v2.xp || v1.yp != v2.yp; } +QT_WARNING_POP Q_DECL_CONSTEXPR inline const QVector2D operator+(const QVector2D &v1, const QVector2D &v2) { diff --git a/src/gui/math3d/qvector3d.h b/src/gui/math3d/qvector3d.h index c1d881a735..a728fd76bf 100644 --- a/src/gui/math3d/qvector3d.h +++ b/src/gui/math3d/qvector3d.h @@ -229,6 +229,9 @@ inline QVector3D &QVector3D::operator/=(const QVector3D &vector) return *this; } +QT_WARNING_PUSH +QT_WARNING_DISABLE_CLANG("-Wfloat-equal") +QT_WARNING_DISABLE_GCC("-Wfloat-equal") Q_DECL_CONSTEXPR inline bool operator==(const QVector3D &v1, const QVector3D &v2) { return v1.xp == v2.xp && v1.yp == v2.yp && v1.zp == v2.zp; @@ -238,6 +241,7 @@ Q_DECL_CONSTEXPR inline bool operator!=(const QVector3D &v1, const QVector3D &v2 { return v1.xp != v2.xp || v1.yp != v2.yp || v1.zp != v2.zp; } +QT_WARNING_POP Q_DECL_CONSTEXPR inline const QVector3D operator+(const QVector3D &v1, const QVector3D &v2) { diff --git a/src/gui/math3d/qvector4d.h b/src/gui/math3d/qvector4d.h index 9387e8d187..f63b2f141b 100644 --- a/src/gui/math3d/qvector4d.h +++ b/src/gui/math3d/qvector4d.h @@ -229,6 +229,9 @@ inline QVector4D &QVector4D::operator/=(const QVector4D &vector) return *this; } +QT_WARNING_PUSH +QT_WARNING_DISABLE_CLANG("-Wfloat-equal") +QT_WARNING_DISABLE_GCC("-Wfloat-equal") Q_DECL_CONSTEXPR inline bool operator==(const QVector4D &v1, const QVector4D &v2) { return v1.xp == v2.xp && v1.yp == v2.yp && v1.zp == v2.zp && v1.wp == v2.wp; @@ -238,6 +241,7 @@ Q_DECL_CONSTEXPR inline bool operator!=(const QVector4D &v1, const QVector4D &v2 { return v1.xp != v2.xp || v1.yp != v2.yp || v1.zp != v2.zp || v1.wp != v2.wp; } +QT_WARNING_POP Q_DECL_CONSTEXPR inline const QVector4D operator+(const QVector4D &v1, const QVector4D &v2) { diff --git a/src/gui/opengl/qopenglframebufferobject.cpp b/src/gui/opengl/qopenglframebufferobject.cpp index cedbe19191..98ff49ea31 100644 --- a/src/gui/opengl/qopenglframebufferobject.cpp +++ b/src/gui/opengl/qopenglframebufferobject.cpp @@ -47,7 +47,6 @@ #include <private/qfont_p.h> #include <qwindow.h> -#include <qlibrary.h> #include <qimage.h> #include <QtCore/qbytearray.h> diff --git a/src/gui/painting/qpainter.cpp b/src/gui/painting/qpainter.cpp index 083e68fcdb..b186182c34 100644 --- a/src/gui/painting/qpainter.cpp +++ b/src/gui/painting/qpainter.cpp @@ -5968,7 +5968,7 @@ void QPainter::drawText(const QRect &r, int flags, const QString &str, QRect *br \snippet code/src_gui_painting_qpainter.cpp 17 \endtable - The \a boundingRect (if not null) is set to the what the bounding rectangle + The \a boundingRect (if not null) is set to what the bounding rectangle should be in order to enclose the whole text. For example, in the following image, the dotted line represents \a boundingRect as calculated by the function, and the dashed line represents \a rectangle: diff --git a/src/gui/painting/qtransform.h b/src/gui/painting/qtransform.h index 2aea19eca0..5ca1d46982 100644 --- a/src/gui/painting/qtransform.h +++ b/src/gui/painting/qtransform.h @@ -291,6 +291,10 @@ inline qreal QTransform::dy() const return affine._dy; } +QT_WARNING_PUSH +QT_WARNING_DISABLE_CLANG("-Wfloat-equal") +QT_WARNING_DISABLE_GCC("-Wfloat-equal") + inline QTransform &QTransform::operator*=(qreal num) { if (num == 1.) @@ -348,6 +352,8 @@ inline QTransform &QTransform::operator-=(qreal num) return *this; } +QT_WARNING_POP + inline bool qFuzzyCompare(const QTransform& t1, const QTransform& t2) { return qFuzzyCompare(t1.m11(), t2.m11()) diff --git a/src/gui/text/qdistancefield.cpp b/src/gui/text/qdistancefield.cpp index 933dd1bf54..064c2aca7f 100644 --- a/src/gui/text/qdistancefield.cpp +++ b/src/gui/text/qdistancefield.cpp @@ -436,8 +436,8 @@ static void drawPolygons(qint32 *bits, int width, int height, const QPoint *vert const quint32 *indices, int indexCount, qint32 value) { Q_ASSERT(indexCount != 0); - Q_ASSERT(height <= 128); - QVarLengthArray<quint8, 16> scans[128]; + typedef QVarLengthArray<quint8, 16> ScanLine; + QVarLengthArray<ScanLine, 128> scans(height); int first = 0; for (int i = 1; i < indexCount; ++i) { quint32 idx1 = indices[i - 1]; |