summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
| | | | * Properly use the "process" featureUlf Hermann2017-02-2715-37/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace all QT_NO_PROCESS with QT_CONFIG(process), define it in qconfig-bootstrapped.h, add QT_REQUIRE_CONFIG(process) to the qprocess headers, exclude the sources from compilation when switched off, guard header inclusions in places where compilation without QProcess seems supported, drop some unused includes, and fix some tests that were apparently designed to work with QT_NO_PROCESS but failed to. Change-Id: Ieceea2504dea6fdf43b81c7c6b65c547b01b9714 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | | | * fix detection of static icu under unixOswald Buddenhagen2017-02-271-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the library has a dependency on libdl. Task-number: QTBUG-58301 Change-Id: I36567ded32980b241ff2f01cfdec044510405a75 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| | | | * streamline libdl detection and linkingOswald Buddenhagen2017-02-276-20/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | instead of having a library and a test, use a library with two sources, the first being empty (i.e., just libc). this allows us doing away with the "libdl" feature, and using just the "dlopen" one. subsequently, replace all LIBS+=$$QMAKE_LIBS_DYNLOAD with QMAKE_USE+=libdl. the definitions of QMAKE_LIBS_DYNLOAD remain in the qmakespecs for backwards compat only. n.b.: the only specs where it is not empty or "-ldl" (i.e., what we support now) are the hpux ones, where the library is called 'dld'. technically, the "library" feature should depend on '!unix || dlopen', but that's for a later patch. Change-Id: Ib8546affc4b7bc757f1a76729573ddd00e152176 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
| | | | * forkfd: use SA_SIGINFO to pass extra information to chained handlersThiago Macieira2017-02-261-11/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This existed in QProcess before forkfd, but was lost in the port to it (commit 1814142b7a11befab315bf3f9d91c4ffbf56ef3e). The original QProcess fix was done in 97279d05822a70da1fb3dab083d823a5f5a008fe. Task-number: QTBUG-57584 Change-Id: Ibc5c715fda334a75bd2efffd14a425871f3162b5 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| | | | * Fix documentation typosChristian Gagneraud2017-02-253-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes 2 simple typos in QGraphicsItem and QPainter documentation and a copy/paste error between QAbstractItemModel's beginRemoveColumns and beginRemoveRows documentation. Change-Id: I32bdc4dc69154a40fe30a5b8c08d0c3a001853f8 Reviewed-by: Harri Porten <porten@froglogic.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| | | | * remove unused Xlib's XRender dependencyGatis Paeglis2017-02-243-20/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We do use xcb-xrender, and it has its own detection logic in configure.json. Change-Id: I20bbc1ddf5dd0c32e93ef2c12c7b0eda3f96f4f4 Reviewed-by: Alexander Volkov <a.volkov@rusbitech.ru> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | | | * QDateTime: Fix clearing the ShortData flag in setMSecsSinceEpochThiago Macieira2017-02-241-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unlike setTimeSpec, this forgot to clear the bit when detaching. So it's possible that some further use of the flags could incorrectly conclude that the data was short and then proceed to corrupt the pointer. The example from QTBUG-59061 caused this because toUTC() -> toTimeSpec() calls setMSecsSinceEpoch which left the bit set; then addDays() calls setDateTime(), which calls checkValidDateTime() and that corrupted the pointer. This problem was more visible on 32-bit systems because no QDateTime was short (except for default constructed ones), but it can happen on 64-bit with sufficiently large dates. Task-number: QTBUG-59061 Change-Id: Ibc5c715fda334a75bd2efffd14a562a375a4e69b Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| | * | | moc: Support signals that return movable-only typeOlivier Goffart2017-03-132-12/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By adding std::move where it makes sense. This is not only good for move-only types, but for any type which can be moved as it saves copies of the return value in any case. [ChangeLog][moc] Move-only types are now supported as return types of signals and slots. Change-Id: Idc9453af993e7574a6bddd4a87210eddd3da48a9 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| | * | | xpm image format: Reject corrupt images with invalid header infoEirik Aavitsland2017-03-131-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The xpm handler did not properly check that the information read from the file header was sane. Task-number: QTBUG-59211 Change-Id: I84099777a16b2b0c473d139f5fdec1d0cb5d515e Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
| | * | | Suppress -Wfloat-equal when defining float16 equality operatorsUlf Hermann2017-03-131-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ie30fa13eb5f8eb44f0c9c21e9483c8aba40cec02 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| | * | | Clean-up QRgba64 constructorsAllan Sandfeld Jensen2017-03-131-13/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can add basic constructors now on all supported platforms, and can make initialization consistent on all platforms, choosing undefined as the default. Note this changes behavior on gcc and clang builds, but is consistent with pre-c++11 gcc and clang builds and with msvc. [ChangeLog][QtGui][QRgba64] The default constructor on Clang and GCC builds now no longer initializes with 0s, but leaves the value uninitialized. This is consistent with MSVC behavior and pre-C++11 behavior of GCC and Clang. Change-Id: Ib0e3d7f4274a13a768db62931b67877e3898945e Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| | * | | moc: put the QPrivateSignal argument in the arg arrayOlivier Goffart2017-03-131-6/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even if it is normaly not used, templated code might still try to access it Task-number: QTBUG-59414 Change-Id: I9f7aadd714843059c8f89cdac48c60a3e2ca7294 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | * | | Doc: Add links to the signal-slot syntaxes pageSze Howe Koh2017-03-132-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I5443a09d18ada6de16a5cec503523b7cc284b0dc Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | * | | QGuiApplication: fix QString comparisonMarc Mutz2017-03-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The code compared a QString* with a QString, which only compiled because the QStringRef(const QString*) ctor was implicit. We're going to fix that, and it's nice to see that the change exposes bugs like this one. The fix is to deref the QString* argument, which we know from previous checks to be non-nullptr, to enable normal QString/QString comparison. Change-Id: Idc7b214cb26e8b7c18ee1ba0a2b7236f814f0810 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | * | | Add feature.abstractbuttonStephan Binner2017-03-1316-19/+76
| | |/ / | | | | | | | | | | | | | | | | Change-Id: Ie93c6d0a8256bc466d3419408b753d5f3738aa6b Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| | * | Deprecate QString::nullMarc Mutz2017-03-124-4/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's a Qt 3 compatibility vehicle, and as such inherits the now-alien property to distinguish empty and null strings. Particularly worrisome is the following asymmetry: QString("") == QString::null // false QString("") == QString(QString::null) // true Instead of fixing this behavior, recognize that people might use it as a weird way to call isNull(), albeit one that once was idiomatic, and simply deprecate everything that deals with QString::null. [ChangeLog][QtCore][QString] QString::null is now deprecated. When used to construct a QString, use QString() instead. When used to compare to a QString, replace with QString::isNull(). Change-Id: I9f7e84a92522c75666da15f49324c500ae93af42 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru>
| | * | QMacStyle: fix QTabBar tab sizeOleg Yadrov2017-03-111-9/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A few small visual issues were introduced during recent QTabBar restyling (see 175f33ed855b0a8a30daafacd4f48fa3f8e76a9b) Change-Id: Ifab8b9f24e2cad6e1a827b1061471882a1bc9f5e Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* | | | Windows QPA: Fix compiler warning when Vulkan is not presentFriedemann Kleint2017-03-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qwindowsnativeinterface.cpp: In member function 'virtual void* QWindowsNativeInterface::nativeResourceForWindow(const QByteArray&, QWindow*)': qwindowsnativeinterface.cpp:104:12: error: enumeration value 'VulkanSurface' not handled in switch [-Werror=switch] Amends f1a23a546720e4f1541404185ff8e765463e6bf6. Task-number: QTBUG-55981 Change-Id: Ie9bf396ab8ea1be505abfaffd5d603bb3856c089 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | | | Use new QStringList::contains(QL1S)Anton Kudryavtsev2017-03-203-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ... to reduce text size by replacing QStringLiteral with QL1S. Change-Id: I8166282d915f081ba816989039451466ec29e208 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | | QStringList: add contains(QLatin1String) overloadAnton Kudryavtsev2017-03-202-6/+35
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | ... to avoid the expensive conversion from QString to QL1S. [ChangeLog][QtCore][QStringList] Added contains(QLatin1String) overload. Change-Id: Ie75839ce9e46e03fe5155a02c7dcf00277b95c8d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | QFactoryLoader: use QStringLiteral more judiciouslyAnton Kudryavtsev2017-03-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Replace it with QL1S in overloaded functions. Saves some text size. Change-Id: Ie1436a787fb3052157880234ca180fefce5a8412 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Split fetchTransformedBilinear and fetchTransformedBilinear64Allan Sandfeld Jensen2017-03-191-356/+289
| | | | | | | | | | | | | | | | | | | | | Split out basic fetching to share it between the two. Change-Id: I6c27a7cea3a5c10b511232edc68bd32490514a27 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* | | Basic Vulkan enablersLaszlo Agocs2017-03-1749-18/+9015
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For Android, Windows and xcb. Verified on Win10 with NVIDIA, Win10 with AMD, Android with Tegra K1, Android aarch64 with Tegra X1, and Linux aarch64 with Tegra X1 (Jetson TX1, L4T). Introduce QPA-based Vulkan library loader, core function resolver, and instance creation support. In addition to creating a new VkInstance, adopting an existing one from an external engine is supported as well. The WSI specifics are hidden in the platform plugins. Vulkan-capable windows use the new surface type VulkanSurface and are associated with a QVulkanInstance. On Windows VULKAN_SDK is picked up automatically so finding vulkan.h needs no additional manual steps once the LunarG SDK is installed. [ChangeLog][QtGui] Added support for rendering to QWindow via the Vulkan graphics API. Task-number: QTBUG-55981 Change-Id: I50fa92d313fa440e0cc73939c6d7510ca317fbc9 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* | | QPixmap: move mask functions into QPlatformPixmapLouai Al-Khanji2017-03-173-69/+81
| | | | | | | | | | | | | | | | | | | | | | | | These used to be in QPixmapData in Qt4, allowing platforms to override mask handling. Useful when native 32-bit ARGB might not be available. Change-Id: I1fcb77222ee4bc4705a8b4c614c9d5c3938c47ba Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | QChar: add (char16_t) and (wchar_t) ctorsMarc Mutz2017-03-172-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... for better std C++ integration. [ChangeLog][QtCore][QChar] Added constructors from char16_t and, on Windows, wchar_t. Change-Id: I2d18ea3a37e869b8ea9f4036d7200d9d13c7d929 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Fix postgres notification subscription on LISTEN failureLorenz Haas2017-03-161-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Register a notification only if the LISTEN call was successful. This behaves now like the UNLISTEN case: the notification is only unregistered if the call was successful. Change-Id: I2b18ec3a619fea5bed0a319013ad9df4b9e15456 Reviewed-by: Matt Newell <newellm@blur.com> Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* | | Make Q_ASSERT() usable in constexpr functionsMarc Mutz2017-03-162-9/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need Q_ASSERT in (C++11) constexpr functions, and the only way to inject them in C++11 is to use the comma operator. E.g. in QLatin1String: constexpr QLatin1Char at(int i) const { return assert(1 >= 0), assert(i < size()), m_data[i]; } The main problem with our existing Q_ASSERT is that while it is a ternary expression in active mode, it was a statement in passive mode. This is easily fixed by dropping the do-while loop and leaving just its parenthesized exit condition. Add a cast to void, too, ensuring that Q_ASSERT has type void in both passive and active modes. But even in C++14 constexpr functions, which accept several statements, Q_ASSERT needs to have a path through its conditionals that is constexpr, but neither qt_assert(_x) nor qt_noop() are constexpr. Nor can they be in C++11 (no void returns in C++11 constexpr functions). I fixed this by replacing qt_noop() with static_cast<void>(0). The void cast is required so both 2nd and 3rd arguments to the ternary are void (mixing void and non-void branches in the ternary is only allowed if the void leg is a throw-expression[1]). As a drive-by, adjust to style guide, remove overparenthesization and reverse the conditional in the ternary. Apply it to QLatin1String where we had the problem that constexpr functions had a narrow constract. [1] should probably be extended to any [[noreturn]] void function, e.g. std::terminate(). [ChangeLog][QtCore][QtGlobal] Q_ASSERT() and Q_ASSERT_X() now always expand to expressions of type void that are usable in constexpr contexts. This makes them usable in both C++11 and C++14 constexpr functions. Change-Id: I09c396bc0034ac344cfaadc6f8cbeb1b7b0cbabc Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | | Make QWindow's windowState a QFlags of the WindowStateOlivier Goffart2017-03-1633-332/+355
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reflects QWidget API, and restores some behavior from Qt4. Some WM can have several state at the same time. On Plasma for example, when a window is both maximized and minimized, the "maximized" checkbox is checked from the taskbar entry. The API of QPlatformWindow was changed to take a QFlag and the platform plugins were adapted. - On XCB: Always send the full state to the WM. And read the full state. - On Windows: The code was originally written with '&' in Qt4, and was changed to == when porting. Some adaptation had to be made so the states would be preserved. - On macOS: Only a single state can be set and is reported back for now, with the possibly to expand this in the future. - Other platforms: Just do as before with the effective state. Task-number: QTBUG-57882 Task-number: QTBUG-52616 Task-number: QTBUG-52555 Change-Id: I7a1f7cac64236bbd4c591f796374315639233dad Reviewed-by: Gunnar Sletta <gunnar@crimson.no> Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
* | | Stop using sqlite3_enable_shared_cache: deprecated on macOSThiago Macieira2017-03-161-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qsql_sqlite.cpp:643:5: warning: 'sqlite3_enable_shared_cache' is deprecated: first deprecated in macOS 10.7 [-Wdeprecated-declarations] https://www.sqlite.org/c3ref/enable_shared_cache.html says to use the flag to sqlite3_open_v2() Change-Id: Ib499cebaa4c4489b90b9fffd149d3d5bf9434ae5 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | | Add support for recursive filtering in QSFPMFilipe Azevedo2017-03-142-98/+253
| | | | | | | | | | | | | | | | | | | | | | | | You can now use the recursiveFiltering property to recurse into children to find potential matching children to filter in. Change-Id: I411a2fb29489fd56b9c881b3e6b8d1860cce630c Reviewed-by: Stephen Kelly <steveire@gmail.com>
* | | Deprecate QSignalMapperOlivier Goffart2017-03-146-137/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Does not make much sense now that we can connect to lambda functions [ChangeLog][QtCore][QSignalMapper] QSignalMapper is now marked as deprecated. Change-Id: I89135f23fdf16b42142a125eb7c9a86084c90bfc Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
* | | Merge remote-tracking branch 'origin/5.9' into devLiang Qi2017-03-14146-1084/+2023
|\| | | | | | | | | | | | | | | | | | | | Conflicts: src/widgets/widgets/qpushbutton.cpp Change-Id: I615de00e6e64540c50f658d4d8ab3e002d701a81
| * | Reintroduce a directed QMetaType::typeName arrayThiago Macieira2017-03-091-10/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit fb376e0fcc8d2d0a1731a588bfc6497d05e090e6 removed an array that facilitated returning the names of built-in types, to avoid the jump tables from the switch statement. This commit brings it back but makes the array a compile-time constant string offset table. The array is created by way of a set of C++11 constexpr functions, so we require that compiler feature. I've tested that MSVC 2015 does support it as well as the ICC 17 when masquerading as MSVC 2015, so I've enabled for that too. The only compiler left out is MSVC 2013. If we didn't need to support MSVC 2015, this could have been written more simply with C++14 relaxed constexpr. This also adds unit tests to confirm that QMetaType::typeName() does return null when we said it would. We're testing QMetaType::User-1 (which we'll likely never use) and QMetaType::LastWidgetsType-1 to select something inside the range of the built-in types. Task-number: QTBUG-58851 Change-Id: I4139d5f93dcb4b429ae9fffd14a33982891e2ac1 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * | Build fix for -no-feature-sliderPaul Olav Tvete2017-03-092-0/+6
| | | | | | | | | | | | | | | Change-Id: Ibd7d0c2182c6a11f6d595b6d1015ee7de2d35866 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * | QMacStyle: update QTabBar styleOleg Yadrov2017-03-085-207/+310
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-58266 Change-Id: I135e4dae44e2e97d73b7c7c97d8e682bcf459d75 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
| * | moc: Add support for C++17 nested namespaces (N4230)Olivier Goffart2017-03-081-1/+21
| | | | | | | | | | | | | | | | | | | | | [ChangeLog][moc] Added Support for C++17 nested namespaces Change-Id: Ib83fc5bf48f66546fa97b49710582fbf9c984503 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | moc: Fix parsing of digit separatorOlivier Goffart2017-03-081-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][moc] Fixed parsing errors in presence of C++14 digit separators. Task-number: QTBUG-59351 Change-Id: Iea38ea7388853d84b819c2beb78a59371f57bf7d Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | Add feature.abstractsliderStephan Binner2017-03-089-16/+41
| | | | | | | | | | | | | | | Change-Id: Ib5d0186162fc3b750e6440c74b1181787093ef97 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
| * | Doc: QSizePolicy: Fix documentation warningsTopi Reinio2017-03-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | warning: Can't link to 'controlType()' warning: Can't link to 'horizontalPolicy()' warning: Can't link to 'verticalPolicy()' Change-Id: I6b31acebf183defee7b4ab36976034ed4a3fc98a Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * | Document QT_DEPRECATED_WARNINGSKai Koehne2017-03-081-0/+13
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-58468 Change-Id: I0f822c2dd14878d70b74ddd2db89b11ba54f687b Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Topi Reiniƶ <topi.reinio@qt.io>
| * | Avoid QRgba64 arrays in the generic text-rendering routinesAllan Sandfeld Jensen2017-03-081-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | Like in other functions, allocate arrays of quint64 instead of QRgba64 to avoid the cost of initializing large arrays on every small scanline. Change-Id: Ie132b3157003a18a444ca5c4f94ae668d17327fd Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
| * | QHstsPolicy: Replace bool with QFlagsTimur Pocheptsov2017-03-083-6/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As pointed out in the previous code-review: Replace a bool ctor parameter with QFlags<enum> to conform to Qt API Design Principles (Boolean Parameter Trap). Since the bool with its many unwanted implicit conversions is gone from the ctor parameter list now, drop the explicit keyword again. It was requested because of the boolean parameter in the first place. Change-Id: Ibaf287a6a3e38c22f033fd5d9e024c54f30a1fd4 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * | Windows QPA: Better recover from removed screens when fullscreenJocelyn Turcotte2017-03-081-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QWindowsWindow::handleResized would call isFullScreen_sys which checks if the window's screen geometry matches the one of the window. When switching back from fullscreen, Windows will have set the geometry to fill the next window, but we don't switch QScreen until later in that function, inside handleGeometryChange. This would result in our window to take the whole screen geometry, but the FullScreen state wouldn't be transferred to the new screen. Fix the issue by using screenForGeometry and check if we are fullscreen on any screen. Also make sure that we check the validity of m_savedFrameGeometry when restoring after a screen remove, since we would previously restore to an area not covered by any screen anymore. Change-Id: I43bc02738007918e9a26c1d27a699c51d3365034 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * | QWidgetWindow::event(): Call base implementation for QEvent::WindowStateChangeFriedemann Kleint2017-03-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The base implementation takes care of updating visibility and emitting signals. Task-number: QTBUG-59313 Change-Id: I270b37c894420902488d89dc0c79f4c12b8d9a29 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * | QStyleSheetStyle: introduce class Tampered<QPalette|QFont>Marc Mutz2017-03-082-30/+34
| | | | | | | | | | | | | | | | | | | | | | | | ... as a replacement for two QPairs and move some common QFont/QPalette functionality into it. Change-Id: Iaab92130dd54eaa7900ac2048014a80cbd04bfb6 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * | Doc: Replace std::bind() with lambdas in Qt ConcurrentSze Howe Koh2017-03-076-72/+17
| | | | | | | | | | | | | | | | | | | | | Lambda functions provide all the benefits of std::bind() plus more Change-Id: Iec30b20bb35ac0fae560435b323f80af2f2e5fce Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * | QtXml: add some missing Q_DECLARE_TYPEINFOGiuseppe D'Angelo2017-03-072-0/+8
| | | | | | | | | | | | | | | Change-Id: I4b58aad1c337fe5fdfb70eb517a66b15a34dffc4 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * | Add feature.pushbuttonStephan Binner2017-03-0616-13/+106
| | | | | | | | | | | | | | | Change-Id: I654d91635e60b177df16f6dfe00acc940132f66a Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * | Add feature.checkboxStephan Binner2017-03-069-7/+52
| | | | | | | | | | | | | | | | | | Change-Id: Ib387390b796c3cab6de4ce94e0d217280a300df8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * | Add feature.dialogbuttonboxStephan Binner2017-03-0614-11/+75
| | | | | | | | | | | | | | | | | | Change-Id: I8c136024c3bf431529033a806be646d867919daa Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>