From 9f48f1ebc21f783cd8bb7daab942d70aebf085bc Mon Sep 17 00:00:00 2001 From: Daniel Teske Date: Thu, 15 Jun 2017 15:07:35 +0200 Subject: [PATCH 1/9] QLineEdit: Fix End key for input masks Consider this simple example: QLineEdit edit; edit.setInputMask( "9-9-9-9-9-9" ); edit.show(); Without any input, m_text will contain: " - - - - - ". text() removes the input mask's mask characters from that and returns " ". A string with 6 spaces. Thus currently the End key jumps to position 6, which is in the middle of the string. Using m_text the End key jumps to the actual end. [ChangeLog][QtWidgets][QLineEdit] Fixed End key in combination with certain input masks. Task-number: QTBUG-16187 Task-number: QTBUG-20414 Change-Id: Ibb30a1dfa2f78103611b5afc9971dc43e8bdcc4a Reviewed-by: Richard Moe Gustavsen --- src/widgets/widgets/qwidgetlinecontrol_p.h | 2 +- tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/widgets/widgets/qwidgetlinecontrol_p.h b/src/widgets/widgets/qwidgetlinecontrol_p.h index 8ebed25084..a8fffd23dc 100644 --- a/src/widgets/widgets/qwidgetlinecontrol_p.h +++ b/src/widgets/widgets/qwidgetlinecontrol_p.h @@ -217,7 +217,7 @@ public: void cursorWordBackward(bool mark) { moveCursor(m_textLayout.previousCursorPosition(m_cursor, QTextLayout::SkipWords), mark); } void home(bool mark) { moveCursor(0, mark); } - void end(bool mark) { moveCursor(text().length(), mark); } + void end(bool mark) { moveCursor(m_text.length(), mark); } int xToPos(int x, QTextLine::CursorPosition = QTextLine::CursorBetweenCharacters) const; QRect rectForPos(int pos) const; diff --git a/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp b/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp index 0cfbc651ad..d37fb5c173 100644 --- a/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp +++ b/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp @@ -760,6 +760,14 @@ void tst_QLineEdit::keypress_inputMask_data() keys.addKeyClick(Qt::Key_Delete); QTest::newRow("deleting all") << QString("000.000;_") << keys << QString(".") << QString("___.___"); } + { + QTestEventList keys; + // inserting at end + addKeySequenceStandardKey(keys, QKeySequence::MoveToEndOfLine); + keys.addKeyClick(Qt::Key_Left); + keys.addKeyClick(Qt::Key_0); + QTest::newRow("insert at end") << QString("9-9-9") << keys << QString("--0") << QString(" - -0"); + } { QTestEventList keys; // inserting '12.12' then two backspaces From 54f5b8975055f1d48c74efab085acd6338aa1e3c Mon Sep 17 00:00:00 2001 From: Eirik Aavitsland Date: Tue, 12 Nov 2019 10:46:00 +0100 Subject: [PATCH 2/9] Fix: QIcon high dpi scaling when aspect ratio differs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When an icon engine is asked to produce a pixmap scaled to a certain size, it may return one with a different aspect ratio than requested. In particular, an SVG will use its own aspect ratio, as it should. QIcon's DPR calculation would break down in this case, resulting in ugly scaling. Fixes: QTBUG-79371 Change-Id: Id97049259dcee1a2980474250ef1163be5639085 Reviewed-by: Morten Johan Sørvig --- src/gui/image/qicon.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/gui/image/qicon.cpp b/src/gui/image/qicon.cpp index df8220a0c6..0fe4cd45cb 100644 --- a/src/gui/image/qicon.cpp +++ b/src/gui/image/qicon.cpp @@ -165,6 +165,11 @@ QIconPrivate::QIconPrivate(QIconEngine *e) qreal QIconPrivate::pixmapDevicePixelRatio(qreal displayDevicePixelRatio, const QSize &requestedSize, const QSize &actualSize) { QSize targetSize = requestedSize * displayDevicePixelRatio; + if ((actualSize.width() == targetSize.width() && actualSize.height() <= targetSize.height()) || + (actualSize.width() <= targetSize.width() && actualSize.height() == targetSize.height())) { + // Correctly scaled for dpr, just having different aspect ratio + return displayDevicePixelRatio; + } qreal scale = 0.5 * (qreal(actualSize.width()) / qreal(targetSize.width()) + qreal(actualSize.height() / qreal(targetSize.height()))); return qMax(qreal(1.0), displayDevicePixelRatio *scale); From 61def1f6cdf2eff521f77c9186fc3bb929359ab9 Mon Sep 17 00:00:00 2001 From: Florian Korsakissok Date: Wed, 13 Nov 2019 13:46:24 +0100 Subject: [PATCH 3/9] HiDPI: Select most fitting pixel ratio when painting QIcon MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit There is a way to select a better pixel ratio when the QPainter has a valid pointer to a QPaintDevice than simply getting the global app pixel ratio. Change-Id: I8f89fd01094bbac7a01a83be89991730b0fa6597 Reviewed-by: Thorbjørn Lund Martsum --- src/gui/image/qicon.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gui/image/qicon.cpp b/src/gui/image/qicon.cpp index 0fe4cd45cb..84e387e317 100644 --- a/src/gui/image/qicon.cpp +++ b/src/gui/image/qicon.cpp @@ -190,7 +190,12 @@ QPixmapIconEngine::~QPixmapIconEngine() void QPixmapIconEngine::paint(QPainter *painter, const QRect &rect, QIcon::Mode mode, QIcon::State state) { - QSize pixmapSize = rect.size() * qt_effective_device_pixel_ratio(0); + qreal dpr = 1.0; + if (QCoreApplication::testAttribute(Qt::AA_UseHighDpiPixmaps)) { + auto paintDevice = painter->device(); + dpr = paintDevice ? paintDevice->devicePixelRatioF() : qApp->devicePixelRatio(); + } + const QSize pixmapSize = rect.size() * dpr; QPixmap px = pixmap(pixmapSize, mode, state); painter->drawPixmap(rect, px); } From 737fd5550bbbc727af18cc2ce43a71753ab95b95 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Wed, 2 Oct 2019 21:16:49 -0700 Subject: [PATCH 4/9] Change the QtCore library output to show the plugin path It's a lot more useful than the include dir. It actually helps debug problems. Change-Id: I1496b069cc534f1a838dfffd15ca07fe8ad1c8c6 Reviewed-by: Edward Welbourne Reviewed-by: Allan Sandfeld Jensen --- src/corelib/global/qlibraryinfo.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp index 8bcf67e73d..276741c9fb 100644 --- a/src/corelib/global/qlibraryinfo.cpp +++ b/src/corelib/global/qlibraryinfo.cpp @@ -887,10 +887,10 @@ void qt_core_boilerplate() "\n" "Installation prefix: %s\n" "Library path: %s\n" - "Include path: %s\n", + "Plugin path: %s\n", qt_configure_prefix_path_str + 12, qt_configure_strs + qt_configure_str_offsets[QT_PREPEND_NAMESPACE(QLibraryInfo)::LibrariesPath - 1], - qt_configure_strs + qt_configure_str_offsets[QT_PREPEND_NAMESPACE(QLibraryInfo)::HeadersPath - 1]); + qt_configure_strs + qt_configure_str_offsets[QT_PREPEND_NAMESPACE(QLibraryInfo)::PluginsPath - 1]); QT_PREPEND_NAMESPACE(qDumpCPUFeatures)(); From 4218c3044d19d4f94de0bd673c83fa043f5604ae Mon Sep 17 00:00:00 2001 From: Edward Welbourne Date: Wed, 13 Nov 2019 18:09:15 +0100 Subject: [PATCH 5/9] Revert "[macOS] Skip test that triggers a buffer overflow in CoreFoundation" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Allegedly Apple has fixed the bug that made this necessary, so we should be able to include these two test-cases once more. This reverts commit ba9585bd02ba975013d73a75fa2382ffa708c990. Fixes: QTBUG-69875 Change-Id: I5ac6019c0d647691eda6cdbb2a53e7471859d4a3 Reviewed-by: Tor Arne Vestbø Reviewed-by: Qt CI Bot --- tests/auto/corelib/text/qlocale/tst_qlocale.cpp | 6 ------ 1 file changed, 6 deletions(-) diff --git a/tests/auto/corelib/text/qlocale/tst_qlocale.cpp b/tests/auto/corelib/text/qlocale/tst_qlocale.cpp index 3aa3d97dbc..20ed7500b5 100644 --- a/tests/auto/corelib/text/qlocale/tst_qlocale.cpp +++ b/tests/auto/corelib/text/qlocale/tst_qlocale.cpp @@ -595,10 +595,7 @@ void tst_QLocale::emptyCtor_data() ADD_CTOR_TEST("zz_zz", "C"); ADD_CTOR_TEST("zz...", "C"); ADD_CTOR_TEST("en.bla", "en_US"); -#if !(defined(Q_OS_DARWIN) && QT_HAS_FEATURE(address_sanitizer)) - // See QTBUG-69875 ADD_CTOR_TEST("en@bla", "en_US"); -#endif ADD_CTOR_TEST("en_blaaa", "en_US"); ADD_CTOR_TEST("en_zz", "en_US"); ADD_CTOR_TEST("en_GB.bla", "en_GB"); @@ -607,10 +604,7 @@ void tst_QLocale::emptyCtor_data() // Empty optional fields, but with punctuators supplied ADD_CTOR_TEST("en.", "en_US"); -#if !(defined(Q_OS_DARWIN) && QT_HAS_FEATURE(address_sanitizer)) - // See QTBUG-69875 ADD_CTOR_TEST("en@", "en_US"); -#endif ADD_CTOR_TEST("en.@", "en_US"); ADD_CTOR_TEST("en_", "en_US"); ADD_CTOR_TEST("en_.", "en_US"); From 52c8e9dc99b9405502d1a37b6406a55e5e156142 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Tue, 12 Nov 2019 21:56:09 +0100 Subject: [PATCH 6/9] Fix precompiled headers on macOS Since commit 059172c6 precompiled headers did not work anymore on macOS, because the ${QMAKE_PCH_ARCH} string was suddenly appearing in locations where it was not replaced with the actual architecture, e.g. the directory where the PCH files are written. Fix this by replacing the whole file path and not just portions of it. Fixes: QTBUG-79694 Change-Id: I925d4ee8980a0de3205a0e387a516a5c6f8cfa4b Reviewed-by: Alexandru Croitor Reviewed-by: BogDan Vatra Reviewed-by: Kai Koehne --- qmake/generators/unix/unixmake.cpp | 21 +++++++++++---------- qmake/generators/unix/unixmake2.cpp | 11 +++++++---- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/qmake/generators/unix/unixmake.cpp b/qmake/generators/unix/unixmake.cpp index e56e8c41b6..f7bd6dc663 100644 --- a/qmake/generators/unix/unixmake.cpp +++ b/qmake/generators/unix/unixmake.cpp @@ -208,15 +208,15 @@ UnixMakefileGenerator::init() escapeFilePath(pchBaseName + language + headerSuffix)); const ProStringList pchArchs = project->values("QMAKE_PCH_ARCHS"); for (const ProString &arch : pchArchs) { - QString suffix = headerSuffix; - suffix.replace(QLatin1String("${QMAKE_PCH_ARCH}"), arch.toQString()); + QString file = pchBaseName + language + headerSuffix; + file.replace(QLatin1String("${QMAKE_PCH_ARCH}"), arch.toQString()); if (project->isActiveConfig("clang_pch_style") - && (suffix.endsWith(QLatin1String(".pch")) - || suffix.endsWith(QLatin1String(".gch")))) { - suffix.chop(4); // must omit header suffix for -include to recognize the PCH + && (file.endsWith(QLatin1String(".pch")) + || file.endsWith(QLatin1String(".gch")))) { + file.chop(4); // must omit header suffix for -include to recognize the PCH } pchFlags.replace(QLatin1String("${QMAKE_PCH_OUTPUT_") + arch + QLatin1Char('}'), - escapeFilePath(pchBaseName + language + suffix)); + escapeFilePath(file)); } } } @@ -363,10 +363,11 @@ QStringList if (pchArchs.isEmpty()) pchArchs << ProString(); // normal single-arch PCH for (const ProString &arch : qAsConst(pchArchs)) { - QString suffix = header_suffix; - if (!arch.isEmpty()) - suffix.replace(QLatin1String("${QMAKE_PCH_ARCH}"), arch.toQString()); - QString precompiledHeader = header_prefix + language + suffix; + QString precompiledHeader = header_prefix + language + header_suffix; + if (!arch.isEmpty()) { + precompiledHeader.replace(QLatin1String("${QMAKE_PCH_ARCH}"), + arch.toQString()); + } if (!ret.contains(precompiledHeader)) ret += precompiledHeader; } diff --git a/qmake/generators/unix/unixmake2.cpp b/qmake/generators/unix/unixmake2.cpp index 20f2c88444..550fa9d834 100644 --- a/qmake/generators/unix/unixmake2.cpp +++ b/qmake/generators/unix/unixmake2.cpp @@ -1017,10 +1017,10 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t) if (pchArchs.isEmpty()) pchArchs << ProString(); // normal single-arch PCH for (const ProString &arch : qAsConst(pchArchs)) { - auto suffix = header_suffix.toQString(); + QString file = precomph_out_dir + header_prefix + language + header_suffix; if (!arch.isEmpty()) - suffix.replace(QStringLiteral("${QMAKE_PCH_ARCH}"), arch.toQString()); - precomp_files += precomph_out_dir + header_prefix + language + suffix; + file.replace(QStringLiteral("${QMAKE_PCH_ARCH}"), arch.toQString()); + precomp_files += file; } } } @@ -1140,7 +1140,10 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t) t << "\n\techo \"// Automatically generated, do not modify\" > " << sourceFile_f << "\n\trm -f " << escapeFilePath(pchArchOutput); } else { - t << "\n\t" << mkdir_p_asstring(pchOutputDir); + QString outDir = pchOutputDir; + if (!arch.isEmpty()) + outDir.replace(QStringLiteral("${QMAKE_PCH_ARCH}"), arch.toQString()); + t << "\n\t" << mkdir_p_asstring(outDir); } auto pchArchFlags = pchFlags; From c30ffe1d33e6f48fa94e2003d7c9b17f4c83a6e9 Mon Sep 17 00:00:00 2001 From: Venugopal Shivashankar Date: Fri, 15 Nov 2019 09:08:22 +0100 Subject: [PATCH 7/9] Doc: Move the common documentation to a qdocinc The member functions of QStandardPath and Qt.labs.platform.StandardPath behave the same, so it's ideal to maintain their documentation in one place. Task-number: QTBUG-79827 Change-Id: I349dbb85cd9b6a3bedac329c0707fc07057cd64b Reviewed-by: Paul Wicking --- .../standardpath/functiondocs.qdocinc | 129 ++++++++++++++++++ src/corelib/io/qstandardpaths.cpp | 66 +-------- 2 files changed, 136 insertions(+), 59 deletions(-) create mode 100644 doc/global/includes/standardpath/functiondocs.qdocinc diff --git a/doc/global/includes/standardpath/functiondocs.qdocinc b/doc/global/includes/standardpath/functiondocs.qdocinc new file mode 100644 index 0000000000..4385b6446d --- /dev/null +++ b/doc/global/includes/standardpath/functiondocs.qdocinc @@ -0,0 +1,129 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: https://www.gnu.org/licenses/fdl-1.3.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ + +//! [displayName] + + Returns a localized display name for the given location \a type + or an empty QString if no relevant location can be found. + +//! [displayName] + + +//! [findExecutable] + + Finds the executable named \a executableName in the specified + \a paths, or the system paths if paths is empty. + + On most operating systems the system path is determined by the + \c PATH environment variable. The directories where to search for + the executable can be set in the paths argument. To search in + both your own paths and the system paths, call findExecutable + twice, once with paths set and once with paths empty. + Symlinks are not resolved in order to preserve behavior for the + case of executables whose behavior depends on the name they are + invoked with + . + \note On Windows, the usual executable extensions (from the PATHEXT + environment variable) are automatically appended. For example, the + findExecutable("foo") call finds \c foo.exe or \c foo.bat if + present. + + Returns the absolute file path to the executable, or an empty + string if not found. + +//! [findExecutable] + +//! [locate] + + Finds a file or directory called \a fileName in the standard + locations for \a type. + + The \a options flag lets you specify whether to look for files + or directories. By default, this flag is set to \c LocateFile. + + Returns the absolute path to the first file or directory found, + otherwise returns an empty string. + +//! [locate] + +//! [locateAll] + + Finds all files or directories by the name, \a fileName, in the + standard locations for \a type. + + The \a options flag lets you specify whether to look for files + or directories. By default, this flag is set to \c LocateFile. + + Returns the list of all the files that were found. + +//! [locateAll] + +//! [setTestModeEnabled] + + If \a testMode is \c true, this enables a special "test mode" in + QStandardPaths, which changes writable locations to point to + test directories. This prevents auto tests from reading + or writing to the current user's configuration. + + It affects the locations into which test programs might write + files: \c GenericDataLocation, \c DataLocation, \c ConfigLocation, + \c GenericConfigLocation, \c AppConfigLocation, + \c GenericCacheLocation, and \c CacheLocation. Other locations + are not affected. + + On Unix, \c XDG_DATA_HOME is set to \c{~/.qttest/share}, + \c XDG_CONFIG_HOME is set to \c{~/.qttest/config}, and + \c XDG_CACHE_HOME is set to \c{~/.qttest/cache}. + + On macOS, data goes to \c{~/.qttest/Application Support}, + cache goes to \c{~/.qttest/Cache}, and config goes to + \c{~/.qttest/Preferences}. + + On Windows, everything goes to a "qttest" directory under + \c{%APPDATA%}. + +//! [setTestModeEnabled] + +//! [standardLocations] + + Returns all the directories where files of \a type belong. + + The list of directories is sorted from high to low priority, + starting with writableLocation() if it can be determined. + This list is empty if no locations for type are defined. + +//! [standardLocations] + +//! [writableLocation] + + Returns the directory where files of \a type should be written to, + or an empty string if the location cannot be determined. + + \note The storage location returned may not exist; that is, + it may need to be created by the system or the user. + +//! [writableLocation] diff --git a/src/corelib/io/qstandardpaths.cpp b/src/corelib/io/qstandardpaths.cpp index 3b5f2f97da..6ebef3ee20 100644 --- a/src/corelib/io/qstandardpaths.cpp +++ b/src/corelib/io/qstandardpaths.cpp @@ -357,22 +357,14 @@ QT_BEGIN_NAMESPACE /*! \fn QString QStandardPaths::writableLocation(StandardLocation type) - Returns the directory where files of \a type should be written to, or an empty string - if the location cannot be determined. - - \note The storage location returned can be a directory that does not exist; i.e., it - may need to be created by the system or the user. + \include standardpath/functiondoc.qdocinc writableLocation */ /*! \fn QStringList QStandardPaths::standardLocations(StandardLocation type) - Returns all the directories where files of \a type belong. - - The list of directories is sorted from high to low priority, starting with - writableLocation() if it can be determined. This list is empty if no locations - for \a type are defined. + \include standardpath/functiondoc.qdocinc standardLocations \sa writableLocation() */ @@ -396,11 +388,7 @@ static bool existsAsSpecified(const QString &path, QStandardPaths::LocateOptions } /*! - Tries to find a file or directory called \a fileName in the standard locations - for \a type. - - The full path to the first file or directory (depending on \a options) found is returned. - If no such file or directory can be found, an empty string is returned. + \include standardpath/functiondoc.qdocinc locate */ QString QStandardPaths::locate(StandardLocation type, const QString &fileName, LocateOptions options) { @@ -414,12 +402,7 @@ QString QStandardPaths::locate(StandardLocation type, const QString &fileName, L } /*! - Tries to find all files or directories called \a fileName in the standard locations - for \a type. - - The \a options flag allows to specify whether to look for files or directories. - - Returns the list of all the files that were found. + \include standardpath/functiondoc.qdocinc locateAll */ QStringList QStandardPaths::locateAll(StandardLocation type, const QString &fileName, LocateOptions options) { @@ -492,23 +475,7 @@ static inline QString #endif // Q_OS_WIN /*! - Finds the executable named \a executableName in the paths specified by \a paths, - or the system paths if \a paths is empty. - - On most operating systems the system path is determined by the PATH environment variable. - - The directories where to search for the executable can be set in the \a paths argument. - To search in both your own paths and the system paths, call findExecutable twice, once with - \a paths set and once with \a paths empty. - - Symlinks are not resolved, in order to preserve behavior for the case of executables - whose behavior depends on the name they are invoked with. - - \note On Windows, the usual executable extensions (from the PATHEXT environment variable) - are automatically appended, so that for instance findExecutable("foo") will find foo.exe - or foo.bat if present. - - Returns the absolute file path to the executable, or an empty string if not found. + \include standardpath/functiondoc.qdocinc findExecutable */ QString QStandardPaths::findExecutable(const QString &executableName, const QStringList &paths) { @@ -566,10 +533,7 @@ QString QStandardPaths::findExecutable(const QString &executableName, const QStr } /*! - \fn QString QStandardPaths::displayName(StandardLocation type) - - Returns a localized display name for the given location \a type or - an empty QString if no relevant location can be found. + \include standardpath/functiondoc.qdocinc displayName */ #if !defined(Q_OS_MAC) && !defined(QT_BOOTSTRAPPED) @@ -626,23 +590,7 @@ QString QStandardPaths::displayName(StandardLocation type) /*! \fn void QStandardPaths::setTestModeEnabled(bool testMode) - If \a testMode is true, this enables a special "test mode" in - QStandardPaths, which changes writable locations - to point to test directories, in order to prevent auto tests from reading from - or writing to the current user's configuration. - - This affects the locations into which test programs might write files: - GenericDataLocation, DataLocation, ConfigLocation, GenericConfigLocation, - AppConfigLocation, GenericCacheLocation, CacheLocation. - Other locations are not affected. - - On Unix, \c XDG_DATA_HOME is set to \e ~/.qttest/share, \c XDG_CONFIG_HOME is - set to \e ~/.qttest/config, and \c XDG_CACHE_HOME is set to \e ~/.qttest/cache. - - On \macos, data goes to \e ~/.qttest/Application Support, cache goes to - \e ~/.qttest/Cache, and config goes to \e ~/.qttest/Preferences. - - On Windows, everything goes to a "qttest" directory under Application Data. + \include standardpath/functiondoc.qdocinc setTestModeEnabled */ static bool qsp_testMode = false; From 17ec21e824fd1955658e4ee3fd4d627f93affe7e Mon Sep 17 00:00:00 2001 From: Mitch Curtis Date: Fri, 15 Nov 2019 10:16:57 +0100 Subject: [PATCH 8/9] Android: remove remaining reference to -android-toolchain-version This amends 65dfc485adc1c5de4840f217c47c6ad79d26ae82. Change-Id: I5e0ec7632befe0650138d1977d42313dc0acf3bf Reviewed-by: Joerg Bornemann --- configure | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/configure b/configure index 19016d5c12..6657870e4b 100755 --- a/configure +++ b/configure @@ -446,8 +446,7 @@ while [ "$#" -gt 0 ]; do -android-ndk| \ -android-ndk-platform| \ -android-ndk-host| \ - -android-arch| \ - -android-toolchain-version) + -android-arch) VAR=`echo $1 | sed 's,^-\(.*\),\1,'` shift VAL="$1" From d17094df60d7d05bb583d26fb8d1de1a7a4fb072 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 18 Nov 2019 14:40:51 +0100 Subject: [PATCH 9/9] Sub-Attaq: Fix compilation with -no-opengl Add missing include removed by 13426aff248c25b44ac377f37dc3e3a54ea0ea86. Fixes: QTBUG-80163 Change-Id: I6b81f399a3abf637a2023700baac09b631d652d5 Reviewed-by: Christian Ehrlicher --- examples/widgets/animation/sub-attaq/mainwindow.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/widgets/animation/sub-attaq/mainwindow.cpp b/examples/widgets/animation/sub-attaq/mainwindow.cpp index 8f545ecebd..f9617a22eb 100644 --- a/examples/widgets/animation/sub-attaq/mainwindow.cpp +++ b/examples/widgets/animation/sub-attaq/mainwindow.cpp @@ -56,6 +56,7 @@ #include #include #include +#include #include #ifndef QT_NO_OPENGL