summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add debug operators for font database structs for easier debuggingTor Arne Vestbø2017-04-183-0/+46
| | | | | Change-Id: Ice1b27ff93de2d369dc6b66c72a64eb05da5639c Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-04-1825-64/+175
|\ | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.cpp Change-Id: I375fa4afa662fa411a15f212ebd5f2f0dffdba7f
| * Fix undefined behavior in QSharedPointer::create()5.8Ihor Dutchak2017-04-172-1/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Initialize a deleter for a new object, created by QSharedPointer::create(), only after the object is actually constructed. [ChangeLog][QtCore][QSharedPointer] Fixed undefined behavior when creating an object with QSharedPointer::create() and its conscructor throws an exception. Task-number: QTBUG-49824 Change-Id: I07f77a78ff468d9b45b8ef133278e8cdd96a0647 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * QMatrix4x4: fix aliasing problem in operator*=Marc Mutz2017-04-142-1/+6
| | | | | | | | | | | | | | | | | | | | | | When multiplying a QMatrix4x4 by itself, we were clobbering the very matrix we read from. Employ read-caching to avoid this aliasing problem. [ChangeLog][QtGui][QMatrix4x4] operator*=() now calculates the correct result even if the RHS and LHS are the same object. Change-Id: I8534d56cfdd62c336577125127f05173fcec2873 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * Doc: updated QSyntaxHighlighter documentation and use QRegularExpressionSamuel Gaist2017-04-124-32/+33
| | | | | | | | | | | | | | | | | | The documentation of QSyntaxHighlighter still uses the deprecated QRegExp class. This patch updates the code samples as well as cleanup some typos. Change-Id: I87b525fddb560b7c5bb38f96d9aaceadb594f76c Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
| * QLocale: do not test for Q_OS_MAC before including qglobal.hGiuseppe D'Angelo2017-04-121-2/+2
| | | | | | | | | | | | | | Found by clazy. Change-Id: I66b6698c309720891db83626e18c5e1baca19091 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * QFontconfigDatabase: properly parse desktop environment variableMarco Trevisan (Treviño)2017-04-121-1/+7
| | | | | | | | | | | | | | | | | | | | $XDG_CURRENT_DESKTOP is defined as a colon-separated list of desktop strings, thus we can't check for equality, but split it and check if it contains the desktop environments we care about. Change-Id: Ia9ab0f28654a3e1a68b918794a079f3974f85642 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
| * QtWidgets: Don't open submenus when mouse is moving between actionsBłażej Szczygieł2017-04-122-5/+19
| | | | | | | | | | | | | | | | | | Don't set the current action during closing submenu when mouse moved more than one action in the menu to the top or to the bottom. Task-number: QTBUG-53215 Change-Id: I2383363bc48f644df046198662dfa4d080fe3f1d Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Improve QStringBuilder docsMarc Mutz2017-04-121-8/+20
| | | | | | | | | | | | | | | | | | | | - Mention you can build QByteArrays, too - Nicer list of types that can be used, separate for QByteArray and QString Change-Id: Ia91445f0cb4872bab12a55f4812c283e9c38dba4 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * Restore compatibility with Qt 5.7.0 and 5.6.1Thiago Macieira2017-04-1212-14/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QSysInfo::productType() returned "osx" for all versions of macOS, even 10.12. Change 3e2bde35786 was incorrect. [ChangeLog][Important Behavior Changes] QSysInfo::productType() and QFileSelector behavior on macOS was restored to match what Qt used to return in version 5.7.0 and earlier. The behavior found in Qt 5.6.2, 5.7.1 and 5.8.0 is removed. [ChangeLog][Future Compatibility Notice] The identifiers that QSysInfo::productType() and QFileSelector will use to identify macOS systems will change in Qt 6.0 to match the Apple naming guidelines which will be current then. Task-number: QTBUG-59849 Change-Id: Ib0e40a7a3ebc44329f23fffd14b2b39392210c4f Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Fix build error with -no-feature-sliderPaul Olav Tvete2017-04-181-1/+1
| | | | | | | | | | | | | | Change-Id: Ia74aeefdba3ac6b831aeeaff40600e30d90183d8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Tasuku Suzuki <tasuku.suzuki@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | icc: thread_local in macOS is working since 10.7Thiago Macieira2017-04-171-4/+1
| | | | | | | | | | Change-Id: I0e1a09998253489388abfffd14b611b1403a0c9f Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Fix build with libdrm >= 2.4.78Thiago Macieira2017-04-172-10/+10
| | | | | | | | | | | | | | | | | | | | drmEventContext has grown by one pointer, so the build fails with an error about a member without initialization. qeglfskmsgbmdevice.cpp:147:5: error: missing initializer for member ‘_drmEventContext::page_flip_handler2’ [-Werror=missing-field-initializers] Change-Id: I0e1a09998253489388abfffd14b6014b1ddc90e1 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Update the Clang support for SIMD code generationThiago Macieira2017-04-171-2/+3
| | | | | | | | | | | | | | | | Clang 3.8 has support for __attribute__((target(xxx))) and its SIMD headers can be included unconditionally. Change-Id: Ic15b7ff417c8412893e5fffd14b5b42b950b48d7 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Update the Clang usual versions for Apple's buildThiago Macieira2017-04-161-1/+5
| | | | | | | | | | Change-Id: Id69a70a52573241e1b6a05bd62a3fd01a8e78550 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | qfloat16: Fix GCC warning about use of old-style castThiago Macieira2017-04-151-0/+1
| | | | | | | | | | | | | | | | | | _mm_cvtps_ph is usually defined as a macro: qfloat16.h:122:37: error: use of old-style cast [-Werror=old-style-cast] Change-Id: Icd0e0d4b27cb4e5eb892fffd14b516ec47826c0c Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | QSplitter::replaceWidget(): Add geometry related remarkGabriel de Dietrich2017-04-141-0/+4
| | | | | | | | | | | | | | | | | | The late geometry update on the widget has been confusing some of our users. Change-Id: I7f2600322be0a0c54fac3beb42065413a0693f74 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | QMenu: Fix torn-off menu display crash issueDongmei Wang2017-04-142-9/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When tearing off either a non-scrollable multi-colume menu or a scrollable menu, displaying the torn-off menu crashes. The root cause is when the torn-off menu is created, the tear-off menu's style, margins and other attributes are not set to it. The patch is to ensure the torn-off menu has the same attributes as the tear-off menu does and set the torn-off menu with a correct menu size. Task-number: QTBUG-24815 Change-Id: Icea45f149ea8792671af4a62e62cad6ee01a1f95 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* | QMenu: Fix margins related display issuesDongmei Wang2017-04-143-22/+242
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the contents margins and the menu paddings are not considered for calculating the menu size, the positions and the size of tear-off bar, scrollers and the positions of the menu items when scrolling the menu, which results in the following problems when valid contents margins and/or menu paddings are set: - The tear off area is displayed in a wrong position. The mouse events are not handled correctly in the tear off area. For example, when you click in the tear off area, the menu should be torn off but nothing happens - For a multi-column menu, the menu width is not calculated correctly - For a scrollable menu, - the menu width is not calculated correctly - the menu items are not displayed in correct positions - the scrollers are not displayed in correct positions - menu items are displayed on the area of borders and margins when scrolling the menu - the last menu item is not displayed above the bottom of the content area when scrolling the menu to the end. The changes are to fix the problems above. Change-Id: I7931e1088dff0029f2d4825e2aa34b4e32fdccd9 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* | QVariant: implement QByteArray ↔ QUuid conversionv5.9.0-beta2Marc Mutz2017-04-143-6/+29
| | | | | | | | | | | | | | | | | | | | Seems like an obvious omission. [ChangeLog][QtCore][QVariant] Can now convert QUuid to and from QByteArray, not just QString. Change-Id: Ib56ae86ca0c27adaf1e095b6b85e64fe64ea8d18 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Fix precompiled headers on Apple platforms, with multiple architecturesJake Petroules2017-04-144-40/+74
| | | | | | | | | | | | | | | | | | | | The original commit only added support for GCC and Clang, but not ICC. Amends 73331eeb Change-Id: Id7638cf1b538edb1008fb3aa10754c1f517a994f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Windows QPA: Move initialization of resources out of the Qt namespaceFriedemann Kleint2017-04-131-1/+6
| | | | | | | | | | | | | | | | | | Q_INIT_RESOURCE() should not be within the Qt namespace; the namespace is appended to the resource function. Task-number: QTBUG-60118 Change-Id: I05203c3196ccdcffaf27658bcd7f3ec1c25f22d9 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Preserve last modification timestamps of installed program filesSimon Hausmann2017-04-134-4/+19
| | | | | | | | | | | | | | | | | | | | Similar to the parent commit, this patch adds a unified code path in qmake itself for installing program files while preserving their original last modification timestamp. Change-Id: I7b7dcfa6228c2bfd48ea6036549398bb6f90032f Task-number: QTBUG-59004 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Be more explicit about the supported platforms for OpenGL ES 2Jake Petroules2017-04-131-3/+3
| | | | | | | | | | | | | | | | The OpenGLES framework is only supported on iOS and tvOS, and does not exist on macOS and watchOS. Change-Id: I643d3bdac522b67a8d945648dfcc8f1780ab0d7f Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* | bootstrap: Remove redundant occurrence of qcore_foundation.mmGabriel de Dietrich2017-04-121-1/+0
| | | | | | | | | | | | | | | | Already added in the "mac" clause. Change-Id: I272882347cb65ef32e5aae7b1eee9f15cede6fcb Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-04-1221-118/+139
|\| | | | | | | Change-Id: I3bd83a839b16822035ed56a5cffe77bd6bc3f08d
| * configure: fix detection of xcb extensionsGatis Paeglis2017-04-111-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Properly detect xcb-render and xkb features. a) when -qt-xcb, use bundled versions b) when -system-xcb, detect from system - Be consistent with other features (jpeg, png) in "enable"/"disable" field handling. - And move the "xkb" feature higer up in configure.json. It is an X11 extension, so keep them all together (instead of grouping it with libxkbcommon). Task-number: QTBUG-59064 Change-Id: I60f95fb37060b8abde4c611cdef178ba3795982c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Android: Fix application state trackingChristian Strømme2017-04-115-29/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Make sure we don't process state changes before the platform plugin is completely created and registered. - Protect shared data with mutexes. - Don't update the application state from different threads. This was causing issues when testing run-time permission checks, when the application quickly switches state due to permission dialog being shown. In this case the states would be incorrectly delivered when the application was made active again. Change-Id: I3446eab9414ee5437cd788c27d65f808d1314aa5 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
| * write Libs.private to .pc files only in static buildsOswald Buddenhagen2017-04-111-12/+12
| | | | | | | | | | | | | | | | | | | | projects using a dynamic build are not supposed to access this variable anyway. Task-number: QTBUG-51598 Change-Id: I81b55ea9ba460b80919f40ed7fe3d52129636b9e Reviewed-by: Michal Klocek <michal.klocek@qt.io> Reviewed-by: Jonathan Liu <net147@gmail.com>
| * Doc: minor language issues in Qt Sql docNico Vertriest2017-04-112-34/+33
| | | | | | | | | | Change-Id: If9ad86644c097d78895e392acdf017f176d8f95d Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| * Don't hide critical infoBogDan Vatra2017-04-111-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | The developer should see what's wrong even on release builds. That code hides any mistakes we do in JNI which are pretty critical for developers because they can't see what's wrong with their code. e.g. QtAndroid::activity().callMethod<void>("wrongMethodName") *silently* fails, which is so wrong! Change-Id: I8b6a24946dfef716fcd86ab9bba82666974e3991 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * Use latest stable version of the android:gradle pluginBogDan Vatra2017-04-111-1/+1
| | | | | | | | | | Change-Id: I15418015c6a206dd1a8e4b52894ec83ddaeb9fc2 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * Android: Fix crash at exitBogDan Vatra2017-04-102-14/+16
| | | | | | | | | | | | | | | | | | | | | | We need to remove and release the surface imediately, otherwise setSurface might be called after the object is deleted. Task-number: QTBUG-59818 Change-Id: I3a09e3de1ceecc22d8d7a48e2fc1cfe40cf09f0a Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Mathias Hasselmann <mathias.hasselmann@kdab.com> Reviewed-by: Christian Stromme <christian.stromme@qt.io>
| * Fix build: Remove unused variableBogDan Vatra2017-04-101-4/+1
| | | | | | | | | | Change-Id: Ib5e7782e23eb1ff976caedd167d3df8b857d9883 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * QVariant: fix docs regarding QUuidMarc Mutz2017-04-101-3/+5
| | | | | | | | | | | | | | | | - toUuid(): QUuid is a built-in type, so use type(), not userType() - canConvert()/toUuid(): QUuid converts to and from QString Change-Id: I5262ff7ab093040cb943b6ab9cfffe95491d2b9b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * QMap: fix UB (invalid cast) in QMapData::end()Thiago Macieira2017-04-091-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The end() pointer, like in all other containers, is a sentinel value that must never be dereferenced. But unlike array-based containers, end() in QMap is not "last element plus one", but points to a base class of Node, not a full Node. Therefore, the casting from QMapNodeBase to QMapNode must not be a static_cast, reinterpret_cast is required. libstdc++-v3's red-black tree had the exact same problem: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60734 Change-Id: I43f05fedf0b44314a2dafffd14b33697861ae589 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * Fix hidpi support for opengl window grabbingFilipe Azevedo2017-04-092-1/+4
| | | | | | | | | | | | | | | | | | | | Now set the QImage devicePixelRatio so the content is correct on all screens. Task-number: QTBUG-53795 Change-Id: Ic92eee98f691ebb1e0212498c1ae13ede74bca93 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| * Add more information about how to get a QString from qgetenvJesus Fernandez2017-04-081-0/+4
| | | | | | | | | | Change-Id: Ic712654c8d4735a59bf02cf6a7e1c689ca9a886c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Fix reusing FTP connection after abortJesus Fernandez2017-04-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | The QNetworkAccessCache was keeping the connection alive and it was trying to reuse it for subsequent calls to download files from the same server. After closing the connection, it is not usable anymore and a new one should be created. Task-number: QTBUG-40368 Change-Id: I1a0d08956a94eb36f39d14112cdcab6c1e2add82 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| * Enable a given SIMD feature if the compiler has enabled itThiago Macieira2017-04-061-1/+1
| | | | | | | | | | Change-Id: I09100678ff4443e6be06fffd1482c08125adc0a4 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Fix menu position when highdpi scalingMorten Johan Sørvig2017-04-061-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Certain display and scale factor configurations would cause menus to pop up in incorrect locations or not be shown at all. This was due to QDesktopWidget::screenNumber() having a toNativePixels(QRect, QWindow) call which requires that QWindow::screen() returns the correct screen. Break the circular dependency by converting coordinates the other way for the intersection test: transform screen geometry to device independent coordinates. Task-number: QTBUG-58329 Change-Id: I5621de89a9a2b8df44bdae528baf011fc111eba3 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Preserve last modification timestamps of installed filesSimon Hausmann2017-04-128-63/+140
| | | | | | | | | | | | | | | | | | | | | | On non-windows platforms, we use the "-p" parameter of install(1) to preserve the last modification timestamps of files. On Windows the use of copy does not preserve them. As a cross-platform solution, this patch introduces a simple built-in install command in qmake to copy files. Task-number: QTBUG-59004 Change-Id: I3064d29a2b8c7b009a1efbf8f00b84c079ea5417 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Prevent QWindow transient parent loopTor Arne Vestbø2017-04-121-0/+4
| | | | | | | | | | | | | | | | Clients may wrongly set the transient parent to the window itself, causing endless loop when e.g. looking for the top level parent. Change-Id: Ib23cae3a5576320435ae9b76dd618d1e5ae08b5d Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | Skip testing of QOpenGlConfig on platforms that don't support itSami Nurmenniemi2017-04-121-0/+7
| | | | | | | | | | | | Task-number: QTBUG-59966 Change-Id: If74657d0a0133c67f57bf92ae96d2d868d523f0e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Fix tst_toolsupport on 32-bit arm platformSami Nurmenniemi2017-04-121-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | On 32-bit arm platform, qint64 gets aligned differently than on 32-bit x86. First difference between the platforms on QFilePrivate member offset happens in QFileDevicePrivate::cachedSize: - On 32-bit x86 it's offset is 148 (4-aligned) - On 32-bit arm it's offset is 152 (8-aligned) and offsets of all the remaining members are +4 compared to x86 - On 64-bit architectures the offsets are the same Change-Id: If110da27ea08504e78b167c0a21599420eaa9630 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QWindowsFontEngineDirectWrite: Fix build with MinGWFriedemann Kleint2017-04-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | In member function 'void tn::QWindowsFontEngineDirectWrite::collectMetrics()': windows\qwindowsfontenginedirectwrite.cpp:361:22: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] if (table.size() >= advanceWidthMaxLocation + sizeof(quint16)) { ^ Amends 17fc188aec5806167d3c6165b0ad299a8d2a6bcf. Task-number: QTBUG-58954 Change-Id: Ice2ff135d411b55d32290069b3c85ca0b5ea09af Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | QSysInfo: Bring back suppression of ICC warning #1478Thiago Macieira2017-04-121-0/+1
| | | | | | | | | | | | | | | | | | Turns out that different versions of ICC use different warning numbers. The Linux and Windows compilers emit 1786, but the macOS one emits 1478. Don't ask me why. Change-Id: I523b0abacd5148b2bf08fffd14b475a4c4d89ba1 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Move Apple-specific -fapplication-extensions option to the mkspecThiago Macieira2017-04-122-4/+6
| | | | | | | | | | | | | | The Intel compiler does not know about it. Change-Id: I523b0abacd5148b2bf08fffd14b4748c3b33c8fb Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | QProcess: fix Unix buildJake Petroules2017-04-111-0/+4
| | | | | | | | | | | | | | | | This fixes a regression introduced in ff19ebcc Task-number: QTBUG-60046 Change-Id: I47c357433b25f07011a7a3a64d3150591785b206 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* | Make networkAccessibility() return the actual state of the networkAndy Shaw2017-04-111-2/+2
| | | | | | | | | | | | | | | | | | | | If networkAccessibility() was queried when the networkAccessibleChanged signal was emitted then it would report the wrong state and in some instances it would incorrectly report NotAccessible. This ensures that it is reflecting what the signal would have been emitted with. Change-Id: Ib0a7ef9e9ec42c9007340020fd535c8ad36caa49 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>