summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Make QOpenGLTextureBlitter publicLaszlo Agocs2016-07-2911-35/+218
| | | | | | | | | | | | Change QOpenGLTextureBlitter to be a public API, as it was originally intended. There are now significant external uses outside qtbase (C++ compositor examples in QtWayland), and the API is considered proven enough. [ChangeLog][QtGui] QOpenGLTextureBlitter, a utility class to draw textured quads, has been made public. Change-Id: If7a2c94e1494195e2aa375d214932fa7b4c78321 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix names of eglfs featuresLaszlo Agocs2016-07-291-8/+8
| | | | | Change-Id: I0f43eea2ebc0dff945801c893302807bb71bc5d3 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Use pkg-config for RPi EGL detectionLaszlo Agocs2016-07-292-2/+8
| | | | | | | | | | The config test for eglfs-brcm would fail otherwise on modern Yocto-based sysroots, as these have no /opt/vc, but have a proper egl.pc that has the include path and libs. Task-number: QTBUG-50838 Change-Id: Ibe8dcfbfe9aabe00fd8c040e6e41a4479ccb39bb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Add missing configure status reporting for eglfs-brcmLaszlo Agocs2016-07-291-1/+1
| | | | | | Change-Id: I05031b3170b922db17387e94a18a52879f3362f9 Reviewed-by: Andy Nichols <andy.nichols@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Store QSslKey in specific key format to provide more details for keyLars Schmertmann2016-07-284-13/+78
| | | | | | | | | | | | In a TLS handshake the ephemeral server key is saved in the ssl configuration. Clients who want to get the length or algorithm of the key only get "Opaque" and "-1" as a result because the key is always stored as "Opaque". This change converts the key to specific type so more details are available and the client don't need to convert the handle by hand. Change-Id: I60f90fc2c1805e528640d391b20c676b6eeeb49e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* Handle indirect sibling selectorAllan Sandfeld Jensen2016-07-275-379/+433
| | | | | | | | | | | Adds parsing and handling of the indirect sibling selector, this should mean we can at least parse all CSS3 selectors even if we do not yet support all of them. Also adds tests for previously added CSS3 selectors. Change-Id: I1ce9afb9466044a38bdec167affc21a87837e4a4 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix regression in rotated bilinear samplingAllan Sandfeld Jensen2016-07-272-4/+65
| | | | | | | | Fix a mistake introduced recently and revealed by lancelot. Adds an auto-test for rotations to catch similar errors faster in the future. Change-Id: I028a160107d98899e723481b6201ef776f20c721 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Cococa integration - close popups in a windowWillClose callbackTimur Pocheptsov2016-07-274-4/+25
| | | | | | | | | | | | 'Orphan' popups were already partially fixed as a side-effect of 10126b37d2e4655e17a2ea25b10801d8f9186f1c (orphan since the 'parent' is moving but popup stays in a now wrong position). This patch also tries to fix the case when a window closed. Change-Id: I0bbf474ab4f3b845d8bd337dae2abbae23192d0e Task-number: QTBUG-46262 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Revert "Emit updateBlock signal in QTextDocumentLayout"Eskil Abrahamsen Blomfeldt2016-07-276-5/+71
| | | | | | | | | | | | | | | | | | | | | This reverts commit 13040043b2f2274de74c296ede7dd3e6ffb67dcb. It introduced a bad regression, noticeable for longer documents, as it would cause the documentChanged(0, length) to trigger a layout of the entire document. The bug report for the commit (or the commit itself) does not contain a test case, but it is regardless the wrong approach. Note that QQuickTextEdit already listens to the contentsChange signal and invalidates the changed parts of the document as a reaction to this, so it should already work as expected. [ChangeLog][Qt Gui][Text] Fixed performance hit from showing large QTextDocuments in a QTextEdit or QTextBrowser. (Regression introduced in Qt 5.3.0) Task-number: QTBUG-51411 Change-Id: I6e7fbf8f62a1d68779eef5da3781de14d9fdcad8 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Introduce SCTP sockets supportAlex Trotsenko2016-07-2766-119/+3873
| | | | | | | Add protocol-specific code and the QSctpServer, QSctpSocket classes. Change-Id: Ie9a1d87bd1fda866a2405043d1c15c12ded5a96e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add QMetaEnum::isScoped to be able to destinguish C++11 enum classOlivier Goffart2016-07-265-10/+34
| | | | | | Change-Id: I67b1dbd069fa57bd60e50690abb5d876edc0d1d2 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update .gitignoreGiuseppe D'Angelo2016-07-261-0/+5
| | | | | Change-Id: Id90e9441d0e30ec5468032328b890577c349c320 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Use earlyReport to handle incorrect use of RPATH config settingsMike Krus2016-07-261-8/+11
| | | | | | | | Report error when using RPATH settings on platforms that don’t support it or when doing static builds Change-Id: I2ba0c2bff5347170c7fcb339da80ef1f1974d43a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Update qcssscanner so it can parse our normal offline documentation CSSAllan Sandfeld Jensen2016-07-266-434/+512
| | | | | | | | | | | | | Adds the three CSS3 attribute selectors. During this the internal naming of the existing attribute-selectors have been changed to be more clear, and the dash-matching has been fixed to not just be beginsWith. A non-breaking space have also been removed from the CSS. Change-Id: Ia4db4a5a19e3ceee8c3c8a4b744149edd1d32bdc Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* QLayout: use qEnvironmentVariableIntValue()Marc Mutz2016-07-261-1/+1
| | | | | | | | It doesn't allocate memory, so cannot throw and is a lot faster than qgetenv(). Change-Id: I355cd4ce9d0e1a56f1b40a340953d6a4b4a58629 Reviewed-by: hjk <hjk@qt.io>
* qFatal: unify the code path for aborting via std::abortGiuseppe D'Angelo2016-07-252-6/+4
| | | | | | | | | | [ChangeLog][QtCore][Important behavior changes] qFatal will now use std::abort to terminate the application on all operating systems. Previously, ::abort() or ::exit(1) were called, depending on the operating system. Change-Id: I43da912cce1db3c2229568da25000ea80060eed9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* HTTP/2 - fix 'GOAWAY' frame size validationTimur Pocheptsov2016-07-251-2/+6
| | | | | | | | | Found while implementing cleartext http2 (and sending some erroneous frames) - GOAWAY can have some 'opaque debug information payload' so the frame's size is at least 8 bytes, but can be more. Change-Id: I90fb8a3df22768673c4f40ba3bf6a3f5ffe33058 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Q(Basic)Mutex: add try_lock{,_for,_until} for STL compatibilityGiuseppe D'Angelo2016-07-253-241/+874
| | | | | | | | | | | | | Now QBasicMutex is Lockable and QMutex is TimedLockable, which means they can be used in std::lock_guard, std::unique_lock, std::lock, etc. [ChangeLog][QtCore][QMutex] QMutex now fully models the TimedLockable concept by providing the try_lock, try_lock_for and try_lock_until functions, therefore making it usable in Standard Library lock management classes and functions. Change-Id: I7c691481a5781a696701e1ab78186b5cefbd6a87 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Extend tests in new json config file to cover UIKIT platformsMike Krus2016-07-251-3/+3
| | | | | | | Replace ios tests with uikit to include tvos Change-Id: Ifc67d556a2b3b24532d0f87b12599420f895ddbd Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* MySQL: Use charset utf8mb4 to allow 4-byte charactersPhilip Seeger2016-07-241-2/+7
| | | | | | | | | | | | | | | | | In MySQL, the character set named utf8 uses a maximum of 3 bytes per character and contains only BMP characters. It does not support supplementary characters. In version 5.5.3, a new UTF-8 character set called utf8mb4 has been introduced, which supports 4-byte characters. [ChangeLog][QtSql][QSqlDatabase] When connecting to a MySQL server whose version is 5.5.3 or higher, the default connection charset is now utf8mb4 instead of utf8 to allow 4-byte UTF-8 encodings. Change-Id: I718bd23212afd67367b39d4ce7da2a99ae0f1cca Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* QRingBuffer: add packet modeAlex Trotsenko2016-07-232-22/+44
| | | | | | | | | | | As a special case, setting the value of chunk size to zero forces QRingBuffer to produce a separate QByteArray on each call which appends the data. So, this enables a packet mode where portions of data are stored independently from each other. Change-Id: I2d0b331211901a289da7d4533e974f06830b5590 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QRingBuffer: allow to change the chunk size of the buffer dynamicallyAlex Trotsenko2016-07-233-0/+16
| | | | | | Change-Id: I0ac55713c7bb8c48d2c9c774376543caef781980 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Improve accuracy in fast path bilinear samplingAllan Sandfeld Jensen2016-07-232-41/+64
| | | | | | | | | Adds rounding before using the optimized low accuracy interpolation, this reduces the magnitude of error in the scaled result from ~4 bits to just 2 bits. Change-Id: Ie4e618bf5b1f4a74367aa419ebbd534cc6a846b3 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* QCocoaApplicationDelegate: Remove unused functionGabriel de Dietrich2016-07-231-6/+0
| | | | | | | | | This seems to be a leftover from pre-QPA Cocoa menus time. Change-Id: I1bcfb3a882f500a63a5dec0fbe01f4541e14d54a Reviewed-by: James Turner <james.turner@kdab.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* Use QElapsedTimer in tst_qmutexGiuseppe D'Angelo2016-07-222-14/+69
| | | | | | | | | | | | | | | | This requires fixing the test on Windows: QMutex internally uses WaitForSingleObjectEx which can wake up early, according to the system timer resolution: https://msdn.microsoft.com/en-us/library/windows/desktop/ms687069(v=vs.85).aspx#waitfunctionsandtime-outintervals QTime must be so slow that it hides the early wakes, but QElapsedTimer is accurate enough to make the test fail unless we add back some tolerance to compensate for the early wakeups. Change-Id: I20b38af9c87a0b0e38a19b9bff1c3c24975c78f5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Make QCocoaMenuLoader a singletonGabriel de Dietrich2016-07-225-12/+19
| | | | | | | | | | | | | | | | | | | | | | | | In some auto-tests, we create several instances of QGuiApplication (though seldom, if ever, simultaneously). However, the QCocoaMenuLoader instance was never properly deallocated, resulting in NSApplication.servicesMenu to still be assigned. This resulted in an exception being raised (NSInternalInconsistencyException) the second time we would construct a QCocoaMenuLoader. The CPU cycles saving solution is to make QCocoaMenuLoader a singleton. This approach is also safe since this class' initialization doesn't depend on any state in QGuiApplication (even the application name is fetched from either the main bundle or the app's args). This also allows us to clean up some code in QCocoaApplication and QCocoaApplicationDelegate who have suffered from lack of attention over the years. Change-Id: Ic4c859d628ab8abd9b469b99c64293582f8e363d Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* Add missing overloads for custom verbsRichard J. Moore2016-07-222-0/+43
| | | | | | | | | When support for custom verbs was added the overloads for the various body data options were not. Task-number: QTBUG-54868 Change-Id: I1a495023d957fc71d1e3b77997a2b4b8531c0a0e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Change test's entry point only when actually building it for winrtMaurice Kalinowski2016-07-221-5/+5
| | | | | Change-Id: I14de901e8cf16d0172a4bd35611c17de753348be Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* QMetaType: Add a benchmark covering creation of QVariant from an enumRobin Burchell2016-07-221-0/+32
| | | | | | | | | | | This proved to be quite slow in the past due to QReadWriteLock's implementation being suboptimal (prior to its improvement in 343e5d066a6b5583688e16baec20f20e6d9a24e0). This codepath is exercised quite extensively by QML with enum registrations. Change-Id: I94d1e13933bf005604dc4494e2cb5bc25ef3d387 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* don't clear the rest of the command line when -redo is usedOswald Buddenhagen2016-07-222-13/+13
| | | | | | | | it's entirely reasonable to extend the saved command line by new arguments. note that these are not saved in turn. Change-Id: I02c1a2b33e93c85b3a29c50de00c2e5334f6ef51 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* remove the configure.exe -loadconfig/-saveconfig optionsOswald Buddenhagen2016-07-221-23/+2
| | | | | | | | | | | | these options don't seem particularly useful (they were added in 2001 without any indication of the intended usage). maintaining multiple static configurations can be best achieved with a script (outside the build directory, which these options didn't permit to start with). this obsoletes QTBUG-46690, which refers to these options. Change-Id: I994c18481cd63d256bb7a6d1948c57f7bd480614 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Revert "Save the pkg-config settings in config.status"Oswald Buddenhagen2016-07-221-4/+0
| | | | | | | | | | | | | it's somewhat questionable to save the environment of pkg-config, but not that of many other things we use. additionally, we now have logic to automatically set it up from the sysroot when it's missing. This reverts commit 228392aff231f105116738df6c4286af257407c7. Change-Id: I0612c196c9a5023bb3ef436aebfb87cb46d8cd14 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* print an empty line after every reportOswald Buddenhagen2016-07-221-9/+11
| | | | | | | | | otherwise we get an unintelligible mess if multiple messages are emitted in the same category. also, there were already empty lines between categories, so it was also inconsistent. Change-Id: I5e6622bc8a5d2773bbd99124cedf4e3eb73b8a60 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* make use_new_dtags a linux-only featureOswald Buddenhagen2016-07-221-2/+6
| | | | | | | it's the only OS with braindead "old" dtags in the first place. Change-Id: I0fba436ff3f9fc061c1741b1899ca133b8ad6b5e Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* permit wrapping expressions in the json fileOswald Buddenhagen2016-07-221-0/+1
| | | | | | | | the json parser passes line breaks verbatim, so we need to get rid of them ourselves. Change-Id: I3b71fe54dcaa8c3a2ff94e8ac4845f49dabe1663 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* make 'feature' report type always use the feature descriptionsOswald Buddenhagen2016-07-222-12/+7
| | | | | | | | | | | they are really meant for pretty-printing the summary in the first place, and were previously unused when this type was invoked explicitly (because of using a condition). adjust the neon/mips_dsp/mips_dspr2 descriptions to match the context and remove the now redundant "message" fields. Change-Id: I08558f342a0d9189a37145085e5470f91a9d0881 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* make firstAvailableFeature report type use the feature descriptionsOswald Buddenhagen2016-07-222-4/+4
| | | | | | | | | they are really meant for pretty-printing the summary in the first place, and were previously unused for this type. adjust the c++* descriptions to match the context. Change-Id: I2a76b5651892bf9bd6fec315e446bfdb7c3aee97 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* make featureList report type use the feature descriptionsOswald Buddenhagen2016-07-222-17/+17
| | | | | | | | | they are really meant for pretty-printing the summary in the first place, and were previously unused for this type. adjust the sse/avx/avx512 descriptions to match the context. Change-Id: Icf514718355c6ccd608d825b70296cc0383dbfe8 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* add missing "enable" fields to opengl featuresOswald Buddenhagen2016-07-221-0/+2
| | | | | | | | this ensures that we complain if desktop gl or gles2 is explicitly requested but not available. Change-Id: Iad068ef34cdf9353cb483d4dc667ddd85ded740d Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* add missing "enable" field to openssl featureOswald Buddenhagen2016-07-221-0/+1
| | | | | | | | | this ensures that an explicitly requested linked/runtime support is complained about when the test fails. the old configure would do that as well. Change-Id: I7f235fa7df5e5d53938de0e32b07536447b8d1d4 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* unify openssl options with the d-bus onesOswald Buddenhagen2016-07-221-1/+2
| | | | | | | | introduce -openssl-runtime and -openssl [no|yes|linked|runtime] for consistency with the respective dbus options. Change-Id: I061b46b52b3132ead4332b33f7a60d6fe0e73ab9 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* simplify conditions of dbus-linked featureOswald Buddenhagen2016-07-221-3/+2
| | | | | | | ... by chaining it to the dbus feature, as is done for openssl/-linked. Change-Id: Id1f9f761914c356d2a0056aa80213954dce3403d Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* accept plain -dbus optionOswald Buddenhagen2016-07-221-1/+1
| | | | | | | the feature's logic is already prepared for that. Change-Id: Ieb0131904b532409fc01bafca9f85fb22039a68a Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* fix recognition of -no-verboseOswald Buddenhagen2016-07-221-0/+5
| | | | | | | | while probably not too useful, the old configure does allow explicitly disabling verbose mode. Change-Id: If0585443c649a67f616b3668cc90b18fecde11ba Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* don't mention config.log in error messages when not applicableOswald Buddenhagen2016-07-221-3/+7
| | | | | Change-Id: I127bc23c667d337bbe2518e7364ca99db9a3163a Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* don't error() out on user errorsOswald Buddenhagen2016-07-221-3/+6
| | | | | | | use the proper error reporting mechanism instead. Change-Id: I3afb0086e5cd672d3c0f441c429682850202024f Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* make command line parsing error messages consistentOswald Buddenhagen2016-07-221-6/+6
| | | | | | | ... by adding some quoting and punctuation. Change-Id: I553171a0c001edc195fcf2e85f0f70bf2cfdd728 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Merge "Merge remote-tracking branch 'origin/5.7' into dev" into refs/staging/devEdward Welbourne2016-07-22161-946/+1821
|\
| * Merge remote-tracking branch 'origin/5.7' into devEdward Welbourne2016-07-19161-946/+1821
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/library/qmakebuiltins.cpp qmake/library/qmakeevaluator.cpp qmake/library/qmakeevaluator.h qmake/project.h QMakeEvaluator: * evaluateConditional(): one side changed return type, the other changed a parameter type. * split_value_list(): one side changed a parameter adjacent to where ... * expandVariableReferences(): ... the other killed one overload and changed the survivor src/corelib/io/qlockfile_unix.cpp One side changed a #if condition, the other moved NETBSD's part of what it controlled. src/corelib/tools/qdatetime.cpp One side fixed a reachable Q_UNREACHABLE in toMSecsSinceEpoch(), the other moved it from the private class to the public one, in the midst of the "short date-time" optimization, which confused diff entirely. One side changed a QStringLiteral to QLatin1String, the other rewrote adjoining code. src/network/kernel/qauthenticator.cpp Both rewrote a line, equivalently; kept the dev version. src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h One side changed #if-ery that the other removed. tools/configure/configureapp.cpp One side added a check to -target parsing; the other killed -target. tests/auto/testlib/selftests/expected_cmptest.lightxml tests/auto/testlib/selftests/expected_cmptest.teamcity tests/auto/testlib/selftests/expected_cmptest.txt tests/auto/testlib/selftests/expected_cmptest.xml tests/auto/testlib/selftests/expected_cmptest.xunitxml Regenerated using generate_expected_output.py I note that quite a few other expected_* come out changed, now. There was no git-conflict in src/widgets/kernel/qformlayout.cpp but it didn't compile; one side removed some unused methods; the other found uses for one of them. Put FixedColumnMatrix<>::removeRow(int) back for its new user. Change-Id: I8cc2a71add48c0a848e13cfc47b5a7754e8ca584
| | * Fix typo in doc snippets of qOverload and relatedFriedemann Kleint2016-07-191-6/+6
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-54808 Change-Id: Ic565710e4d3a95abf98d4696ae7c0001a9171697 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>