summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* QNetworkInterface: complete removing pre-Vista supportThiago Macieira2017-09-251-12/+16
| | | | | | | | | | Commit 2589111dc039b30350714f632222bcc565aa34b5 removed the dynamic function search, but did not remove the offsetof checks. Change-Id: Ibd2b5263f7de551f47fe137dbe1a1b7b7cd71934 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Remove obsolete version checksJake Petroules2017-09-253-35/+10
| | | | | | | Our iOS deployment target is now 8, so this code will never be executed. Change-Id: I7dd4001c01d7c8c2e8e977753cb3fa246b19ce06 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* Add currentType function to QOperatingSystemVersionJake Petroules2017-09-253-19/+29
| | | | | | | | This allows us to retrieve the current OS type without constructing an instance of the class, and it's also constexpr. Change-Id: I8b32a1aebeb8139fe3fcf146e5de558fa1060bb8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QThread::create: move implementation out of lineGiuseppe D'Angelo2017-09-242-69/+76
| | | | | | | | | | | Now that we accept STL datatypes in our ABI, expose a factory function that takes a std::future<void>, and hide the QThread subclass in our implementation. This also solves the problem of a non-exported polymorphic class that would generate duplicate vtables / typeinfo in all TUs. Change-Id: I70a5c301e7c589de1a4a189db39b86b956d1ba0d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QThread::create: make qdoc generate its documentationGiuseppe D'Angelo2017-09-241-0/+7
| | | | | Change-Id: I6eaaa0f9cbda6ef985cda63f2bf36d3102f34f32 Reviewed-by: Martin Smith <martin.smith@qt.io>
* QRandomGenerator: update API to better nameThiago Macieira2017-09-224-45/+63
| | | | | | | | | | | | "generate" is better than "get", and we already have "generate(it, it)" which uses std::generate(). This changes: - get32() → generate() - get64() → generate64() and QRandomGenerator64::generate() - getReal() → generateDouble() Change-Id: I6e1fe42ae4b742a7b811fffd14e5d7bd69abcdb3 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* add back the device-less QNativeGestureEvent (deprecated)Shawn Rutledge2017-09-222-0/+16
| | | | | | | | | | It was an oversight in 83729ad7a1e2d9c75ddf7238ab7c91b514dcebcf that this constructor is still in use in other modules. And in fact we cannot remove public constructors without deprecating them first. Task-number: QTBUG-63355 Change-Id: I64dbf9bc54c0bf6be7157f047b548d3b2c5bc2ed Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* macOS touch and gestures: pay attention to deviceIDShawn Rutledge2017-09-213-24/+35
| | | | | | | | | | | | | | | Previously we pretended that there is only one touch device; but in fact, different trackpads have different deviceIDs, and this may be useful in some scenarios to tell them apart, as on other platforms. So far we don't expect to get touch events from actual touchscreens though, because macOS only turns single-touch events into mouse events and does not interpret gestures on touchscreens. So there isn't API which can distinguish touchscreens from touchpads as far as we know. QCocoaTouch::getTouchDevice() takes the type as a parameter, just in case this changes some day. Change-Id: I56228471363235c5d0cc2a55a35a3c3288f3b1a1 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* make the QTouchDevice available in each QNativeGestureEventShawn Rutledge2017-09-219-25/+47
| | | | | | | | | | | | | | QtQuick is beginning to have a use for this, to distinguish native gestures which come from actual trackpad rather than from the "core pointer". It might as well use a real device ID instead of making one up, as it has to do for the core pointer. So far on macOS, the device ID isn't a real one; but that can be fixed, as the qCDebug lines demonstrate (different trackpads have different IDs). Change-Id: I5841deb1c4cc0b77a3b1df70904f70b3d2d71853 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* Fix loadOpenSslWin32Timur Pocheptsov2017-09-211-0/+18
| | | | | | | | | The libraries are now 'libssl-1_1' and 'libcrypto-1_1', not 'ssleay32' or 'libeay32'. 64-bit versions also have -x64 suffix in their names. Task-number: QTBUG-62692 Change-Id: Ic15bf8f8271d0f6266cb9d2143e292ddba643ded Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Merge "Merge remote-tracking branch 'origin/5.9' into 5.10" into ↵Liang Qi2017-09-21115-571/+768
|\ | | | | | | refs/staging/5.10
| * Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2017-09-20115-571/+768
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/styles/mac/qmacstyle_mac.mm src/widgets/util/qcompleter.cpp src/widgets/widgets/qmainwindowlayout.cpp src/widgets/widgets/qmdisubwindow.cpp Change-Id: If0e96981af07ce36ac68f2e69211bc2120f93973
| | * Convert features.menu to QT_[REQUIRE_]CONFIGStephan Binner2017-09-1955-116/+184
| | | | | | | | | | | | | | | Change-Id: I031356411294b259ebd2b22c53159c93fd92af6e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * Convert features.textedit to QT_[REQUIRE_]CONFIGStephan Binner2017-09-1919-64/+66
| | | | | | | | | | | | | | | Change-Id: I0fb0e658796484f374586d8d1f0f1b9167ab30d2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * windows: Blacklist Intel 8.15.10.1749Laszlo Agocs2017-09-191-1/+16
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-56360 Change-Id: I438e58e13b364a7c4748a4325cb7ff00bb00b25b Reviewed-by: Joni Poikelin <joni.poikelin@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| | * Hide ibus IM on password fieldsAllan Sandfeld Jensen2017-09-182-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We haven't hooked on any of the properties to tell ibus IMs the type of field or that it should be hidden, so hide it like is standard. Change-Id: Iaa64c669f7162b60c16971ec962101b974108e65 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Liang Qi <liang.qi@qt.io>
| | * Add missing pwd.h includeJake Petroules2017-09-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This file uses functions declared in this header, and it is not pulled in transitively on all platforms. Change-Id: I6654118883a8dc22dacf1beb7b9b1c662719d25c Reviewed-by: Tuomas Heimonen <tuomas.heimonen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * QSharedPointer: fix undefined behavior in operator<Giuseppe D'Angelo2017-09-171-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | Pointers belonging to different arrays must be compared using std::less. Change-Id: Ib77af7b1b2da58d7243fa77273a8a45ee9035a1a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Fix convertToFormat with color-tablesAllan Sandfeld Jensen2017-09-141-17/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | The function was only well defined from RGB32 and ARGB32PM formats, this patch fixes it so it behaves well from all formats. Task-number: QTBUG-63163 Change-Id: Id892531d9aaf997b707b430196c1166493792a2a Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
| | * Optimize QVariant::cmp()Lars Knoll2017-09-141-40/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | Don't always copy the variants that we want to compare. This can in some cases be a relatively expensive operation. Change-Id: I2b3fd246ac136b19d8a8d281fbdcfb0417c8fb6c Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
| | * Improve performance of QVariant::canConvert()Lars Knoll2017-09-131-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Add an early check if both types are the same. Change-Id: If6fc60a58fce641521c083bf920e72bf3d2d4c28 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * QMenu: Fix size on high DPI + multi screenThorbjørn Lund Martsum2017-09-132-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When calculating item sizes (used for menu size) the styles consider the widget screen. This widget screen could be a wrong default or an obsolete value. This patch ensures the screen is correct set on popup. [ChangeLog][QtWidgets][QMenu] Fixed menu size issue when using high DPI on multi-screen system. Task-number: QTBUG-59794 Change-Id: I84461441d5d33cb8dc04ab1acb9630fbfc8c5514 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Morten Kristensen <msk@nullpointer.dk> Reviewed-by: Per Liboriussen <liborius@chelys.dk> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
| | * Testlib: Do not list unsupported optionChristian Stenger2017-09-131-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | This option is listed when displaying the help of Quick tests, but was never actively supported as it had been removed before Qt5.0 was finally released. Change-Id: I4cdf8d86471ab72e289f27a07a5f04c0338bfdbd Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| | * Convert features.slider to QT_[REQUIRE_]CONFIGStephan Binner2017-09-1214-40/+47
| | | | | | | | | | | | | | | Change-Id: I03adb5e34071aa106bbfe7caa2d41a93e8d1e263 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * Convert features.lineedit to QT_[REQUIRE_]CONFIGStephan Binner2017-09-1228-59/+80
| | | | | | | | | | | | | | | Change-Id: I509977994b11a7fc0c109bfcc83aadeee6c9b0b8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * Convert features.spinbox to QT_[REQUIRE_]CONFIGStephan Binner2017-09-1229-82/+98
| | | | | | | | | | | | | | | Change-Id: Idecb6927c20ff009795b0ad94bbb7199df98a8f8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * Convert features.sizegrip to QT_[REQUIRE_]CONFIGStephan Binner2017-09-1214-49/+61
| | | | | | | | | | | | | | | Change-Id: Ieac4ae1f0b8b84e943c00da9903346a44e57138c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * Convert features.mdiarea to QT_[REQUIRE_]CONFIGStephan Binner2017-09-1115-46/+43
| | | | | | | | | | | | | | | Change-Id: I6d2ec035a218869aa6595f5848de94ce491d3124 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * Convert features.mainwindow to QT_[REQUIRE_]CONFIGStephan Binner2017-09-1119-44/+59
| | | | | | | | | | | | | | | Change-Id: If7efc8c15d8876f5bc5575d48686894ea71bbe62 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * Cocoa: Update the known menu items when the QCocoaMenuBar is deletedAndy Shaw2017-09-081-8/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If an application has more than one menubar, for instance, one for each mainwindow it has visible then once one is deleted it needs to ensure the application menu items are updated as appropriate. To do this the resetting of the known menu items is extended to cover all the application specific ones so that they can all be updated correctly. Task-number: QTBUG-62193 Change-Id: I61f46a4745f4e40b9283d40fa5a7473f2721c354 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
| | * Add documentation about not having QSqlDatabase objects kept aroundAndy Shaw2017-09-081-0/+8
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-35977 Change-Id: I8601b3f7379a5fe94898a2f5ff63558a896a4de2 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
| | * Cocoa: Check if charactersIgnoringModifiers is not empty tooAndy Shaw2017-09-081-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a dead key occurs as a result of pressing a key combination then characters will have 0 length, but charactersIgnoringModifiers will have a valid character in it. This enables key combinations such as ALT+E to be used as a shortcut with an English keyboard even though pressing ALT+E will give a dead key while doing normal text input. Task-number: QTBUG-57933 Change-Id: I52fe9edacefe7298a96af5430831f805626bacd2 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | | QOperatingSystemVersion: Add debug operatorFriedemann Kleint2017-09-202-0/+18
|/ / | | | | | | | | | | Change-Id: Ibc942196bef0edc74f34501830fc83cb64259e39 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Fix documentation code snippet of QString::arg(QStringView)Friedemann Kleint2017-09-151-2/+2
| | | | | | | | | | | | | | | | Fix qdoc warning: src/corelib/tools/qstring.cpp:7809: warning: Command '\snippet (//! [11-qstringview])' failed at end of file 'qstring/main.cpp' Change-Id: Ie5a57bd94ba64ceab5179593f1df35be29c9985a Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | Fix OpenSSL 1.1 buildTimur Pocheptsov2017-09-141-2/+3
| | | | | | | | | | | | | | | | | | | | Fix the 'shared' OpenSSL code for those our users who build with QSSLSOCKET_DEBUG defined and OpenSSL 1.1 detected: the preprocessor-excluded fragment is using old API. Also remove never used in this file (and commented out) macro. Task-number: QTBUG-63170 Change-Id: Id24ccf2955f0a65e4f1dea1ecb06e10245105080 Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
* | Improve PDF/A-1b support in QPdfWriterTobias Koenig2017-09-141-2/+12
| | | | | | | | | | | | | | | | | | | | Fix warning of missing F key in Annot directory. The F key needs to have the printing flag (bit 3) enabled and all other bits disabled. (Clause 6.5.3 in ISO 19005-1:2005) Change-Id: Iddba6b71f516aca75cd573584aa184c1b808863d Reviewed-by: André Klitzing <aklitzing@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | QNativeSocketEngine: Simplify nativeHasPendingDatagrams()Thiago Macieira2017-09-131-11/+3
| | | | | | | | | | | | | | We don't need the sockaddr structure. Change-Id: I6e9274c1e7444ad48c81fffd14da826387d72f83 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | QNativeSocketEngine: reduce memory usage in nativePendingDatagramSize()Thiago Macieira2017-09-132-9/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Windows implementation had the right idea: by using a chunked read, we can tell the OS to reuse the same buffer over and over, so we don't need to grow a buffer to the size of the datagram when peeking. This commit implements that strategy on Unix and changes both implementations to start at 1500 bytes instead of 8192 (1500 is more than enough for almost all datagrams we're going to receive). Let's also not use a static buffer, but a stack-based one. No need to dedicate 1500 (or, worse, 8192) bytes for something that is only seldom called. Change-Id: I320d9d2f42284a69a4cbfffd14dd92a6775bf28b Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | QStringView: De-inline the length calculation so we can use SSE2Thiago Macieira2017-09-133-10/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Performance is more important in this case than the theoretical benefit of constexpr. This commit implements the SSE2 search for 16-bit null and it might be possible to implement the equivalent for AArch64 (investigation required). It also adds a fallback to wcslen() for systems where wchar_t is short (non-x86 Windows or 32-bit x86 build with -no-sse2). We can re-add the constexpr loop once the C++ language has a way of overloading constexpr and non-constexpr. GCC has a non-standard way to do that with __builtin_constant_p, which is also implemented in this commit, but note that the inline function is still not constexpr. Change-Id: I6e9274c1e7444ad48c81fffd14dcaacafda5ebdc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Add QGuiApplication::screenAt()Tor Arne Vestbø2017-09-113-51/+36
| | | | | | | | | | | | | | | | | | [ChangeLog][QtGui] It's now possible to retrieve the screen at a given point via QGuiApplication::screenAt(). Change-Id: Ic09514ec731d8cce5d453833e98fcd118a70600e Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io> Reviewed-by: Błażej Szczygieł <spaz16@wp.pl>
* | macOS: Detect use of heap-allocated QMacAutoReleasePoolTor Arne Vestbø2017-09-082-1/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QMacAutoReleasePool is backed by an NSAutoreleasePool, which documents that "you should always drain an autorelease pool in the same context (invocation of a method or function, or body of a loop) that it was created". This means allocating QMacAutoReleasePool on the heap is not a supported use-case, but unfortunately we can't detect it on construction time. Instead we detect whether or not the associated NSAutoreleasePool has been drained, and prevent a double-drain of the pool. Change-Id: Ifd7380a06152e9e742d2e199476ed3adab326d9c Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | macOS: Remove QMacRootLevelAutoReleasePool member from QCoreApplicationTor Arne Vestbø2017-09-081-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Tying the pool to the lifetime of QCoreApplication becomes a problem when the application is allocated on the heap, for example when Qt is used to create plugins, as NSAutoreleasePool should be allocated and drained in the same context, typically a function scope. The feature is disabled for now, until we can find a better way to achieve the same thing. Change-Id: I600587df62a8cc7caded5172ad914c0e04d794d9 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.9' into 5.10" into ↵Liang Qi2017-09-06105-1194/+473
|\ \ | | | | | | | | | refs/staging/5.10
| * | Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2017-09-06105-1194/+473
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/opengl/qopenglwidget/main.cpp src/3rdparty/pcre2/src/pcre2_printint.c src/plugins/platforms/cocoa/qnsview.mm src/widgets/widgets/qcombobox.cpp Change-Id: I37ced9da1e8056f95851568bcc52cd5dc34f56af
| | * Convert features.networkdiskcache to QT_[REQUIRE_]CONFIGStephan Binner2017-09-064-15/+11
| | | | | | | | | | | | | | | Change-Id: I8ba76ba1c7210169df14ffab7dabf4b4be086fb9 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * Convert features.socks5 to QT_[REQUIRE_]CONFIGStephan Binner2017-09-063-12/+9
| | | | | | | | | | | | | | | | | | | | | | | | The sources were already added conditionally in the project file since 179fe5981fa. Change-Id: I0baaec2e772f3e596d311c1973b9745aa2b80423 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * Convert features.ftp to QT_[REQUIRE_]CONFIGStephan Binner2017-09-0611-36/+31
| | | | | | | | | | | | | | | | | | | | | | | | QUrlInfo is used only by the FTP implementation, so it uses the same conditionals. Change-Id: Ia15abf44d2a538e90b792a31c65926cc9e16aecf Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * testlib: Print event coordinates and window size when event is outside of windowMitch Curtis2017-09-051-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This gives the user a much clearer understanding of which part of the test caused the warning. Old warning: WARNING: tst_controls::Default::Dial::test_linearInputMode(mouse) Mouse event occurs outside of target window. New warning: WARNING: tst_controls::Default::Dial::test_linearInputMode(mouse) Mouse event at 501, 179 occurs outside of target window (450x450). Change-Id: I2943d79bab5a808e9b5b721758db216b91a07bbd Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| | * Windows QPA: Do not call EnableNonClientDpiScaling() on Desktop GL WindowsFriedemann Kleint2017-09-051-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It causes artifacts when moving the windows between monitors. Amends e8ecde99df8dc8959e1a5af679961cb946ccae69. Task-number: QTBUG-53255 Task-number: QTBUG-62901 Change-Id: Ia8b0f760370887a75efa05bc9736075afebfe069 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| | * macOS: Don’t color convert the backing storeMorten Johan Sørvig2017-09-051-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The backing store was assigned the sRGB color profile as an unintended side effect of the QImage -> CGImage conversion function refactoring in ac899f6d. This caused Core Graphics to add a color convert step, which in some cases caused performance issues. Restore fast, previous behavior by assigning the target display color profile to the backing store image. Color correctness is still a goal, but we’ll add API for it and make it opt-in. Task-number: QTBUG-61384 Change-Id: I107f06a881a34fa711b386265d8dc2edfb246624 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>