summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel
Commit message (Collapse)AuthorAgeFilesLines
* Remove codepaths and checks for unsupported Apple platformsTor Arne Vestbø2018-08-311-65/+14
| | | | | | | We no longer support macOS 10.11, iOS/tvOS 10, or watchOS 3. Change-Id: Ide03d8fac06185ef4162ba75ee54a0adf6916905 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* WebAssembly for QtBaseMorten Johan Sørvig2018-08-303-1/+47
| | | | | | | | | | | | This is the squashed diff from wip/webassembly to dev. Done-with: Peng Wu <peng.wu@intopalo.com> Done-with: Sami Enne <sami.enne@intopalo.com> Done-with: Morten Johan Sørvig <morten.sorvig@qt.io> Started-by: Andrew Knight <andrew.knight@intopalo.com> Change-Id: I6562433c0a38d6ec49ab675e0f104f2665f3392d Reviewed-by: Lorn Potter <lorn.potter@gmail.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Windows code: Fix clang-tidy warnings about C-style castsFriedemann Kleint2018-08-303-11/+17
| | | | | | | | | | | Replace by reinterpret_cast or const_cast, respectively. Use auto when initializing a variable to fix Clang warnings about repeating the type name, do minor tidying along the way, and a few conversions of 0 or NULL to nullptr. Change-Id: Ieb271a87ddcf064f536e1ff05d23b1e688b1b56a Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update QMetaObjectBuilder::MetaObjectFlag enumBogDan Vatra2018-08-302-3/+8
| | | | | | | | | Synced QMetaObjectBuilder::MetaObjectFlag with the MetaObjectFlags enum from qmetaobject_p.h. Also added a few comments for Qt 6. Change-Id: Ieccd5cf8d512a6bf7256b2f4db88d45662774536 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Allow registering constructor for a set of dynamic typesBogDan Vatra2018-08-303-70/+166
| | | | | | | | | | | | | | | This feature is needed to register complex types (e.g. Q_GADGETS) at runtime, using a single constructor method and added type parameter. Without having the type id available to the Constructor it is impossible to specialize behavior, thus requiring separate constructors for each type. Generating these separate constructors at compile time is easy, but not at runtime. [ChangeLog][QMetaType] QMetaType can now register constructor for a set of dynamic types. Change-Id: I6071271d0e157864594dd07b4bc3a0abbeb15a44 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Weak-import global objects used for logging on Apple platformsTor Arne Vestbø2018-08-252-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Otherwise the dynamic loader will complain about missing symbols when the binary is run on platforms below our supported deployment target: dyld: Symbol not found: __os_activity_current Referenced from: QtCore.framework/Versions/5/QtCore (which was built for Mac OS X 10.12) Expected in: /usr/lib/libSystem.B.dylib in /Users/torarne/build/qt/5.12/qtbase/lib/QtCore.framework/Versions/5/QtCore Trace/BPT trap: 5 We want this to trigger our own logic in qt_apple_check_os_version(), where we tell the user in more friendly terms what's going on. An alternative to the targeted weak imports would be do import the whole library as weak, using -weak-lSystem.B. This doesn't seem to cause any performance issues at startup, but since we only need the two global symbols we stick to the more targeted solution just to be on the safe side. Change-Id: I87c1f185f6dcf9df26c700d31bb5071ddf7685be Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Improve detection and handling of unsupported Apple platformsTor Arne Vestbø2018-08-253-12/+15
| | | | | | | | | | | | | | | The application name wasn't always printed, so we try try a few more possibilities before falling back to the process name. We also run the check as early as possible, instead of relying on a QCoreApplication. We do not have to provide a dialog to the user, as macOS will do this for us if the application is launched from Finder. Change-Id: Ifbec86946d60294806364e08964852fd4b74ff56 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* macOS: Take application appearance into account when drawing glyphsTor Arne Vestbø2018-08-242-3/+19
| | | | | | | | | | | | | | | | | | | macOS 10.14 uses a new font smoothing algorithm that takes the fill color into account. This means our default approach of drawing white on black to produce the alpha map will result in non-native looking text when then drawn as black on white during the final blit. As a workaround we use the application's current appearance to decide whether to draw with white or black fill, and then invert the glyph image in the latter case, producing an alpha map. This covers the most common use-cases, but longer term we should propagate the fill color all the way from the paint engine, and include it in the key for the glyph cache. At the moment we do not react to changes in the application appearance, as that seems to be buggy in general in Qt (palette/style, e.g.), and those bugs need to be weeded before we can react to the theme change with confidence. Task-number: QTBUG-68824 Change-Id: Ibbfd49fcf3a091e454009c08159f46b3499e2bd0 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Modernize the "thread" featureUlf Hermann2018-08-175-24/+19
| | | | | | | | | | Add it to configure.json and replace all occurrences of QT_NO_THREAD with QT_CONFIG(thread). Add conditions for other features that depend on thread support. Remove conditions where we can use the QMutex and QThreadStorage stubs. Change-Id: I284e5d794fda9a4c6f4a1ab29e55aa686272a0eb Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Optimize implementation of Indexes generatorMikhail Svetkin2018-08-161-7/+25
| | | | | | | | | | | | ... which is Qt's version of std::make_index_sequence / C++14. The current Indexes generator is recursing O(N) times which is reaching recursion limits level for long IndexesList. This implementation has only O(log N) recursion. Change-Id: I423ef05152d77b18f1f5a64c49b273f49aa958bb Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Merge remote-tracking branch 'origin/5.11' into devLiang Qi2018-08-161-1/+0
|\ | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qconfig-bootstrapped.h src/plugins/platforms/xcb/qxcbbackingstore.cpp Done-with: Gatis Paeglis <gatis.paeglis@qt.io> Change-Id: I4af138ffb2f5306373244523768209e8873b2798
| * Glib dispatcher: use default priority for timersSune Vuorela2018-08-131-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For some reason, the GLib event dispatcher was lowering the priority for timers compared to other events like for example socket events. the IDLE priority is for "Do this later when you are not busy", and that is wrong for generic timer events. See also https://bugs.kde.org/show_bug.cgi?id=230184 Task-number: QTBUG-48344 Change-Id: Id337a8f0c7fad3ebd5e5fa49d7831a0001ea9010 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Fix QMetaObject naming of class enum flagAllan Sandfeld Jensen2018-08-115-32/+116
| | | | | | | | | | | | | | | | | | Adds an enumName to QMetaEnum to carry the name of the enum since for flags that doesn't match the name of the Qt type, but is needed if the flag is scoped. Change-Id: I1c0f77eb9e40e6fd1eb6a59bea77caf0f33fcf43 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Make QEventDispatcherCoreFoundaton work on secondary threadsMorten Johan Sørvig2018-08-093-14/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were using CFRunLoopGetMain() everywhere. Get the correct run loop using CFRunLoopGetCurrent() during initialization, and store it. Event dispatcher initialization must now be delayed until after the constructor has run, since event dispatchers may be created on the main thread and then moved to the target thread. Initialize on first call to processEvents() where the current thread will be the correct thread. Use the stored m_runLoop instead of CFRunLoopGetMain(). This is required for wakeUp() and interrupt() which may be called from another thread. Change-Id: I6fffcfd4394899c4a12f241c42781979aaf99d5e Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | QEventDispatcherCoreFoundation: add overrideMorten Johan Sørvig2018-08-091-12/+12
| | | | | | | | | | | | | | Add override on overridden virtual functions. Change-Id: I9853eedf55fcda9d3d20e73382d0022d3c0b5560 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.11' into dev" into ↵Liang Qi2018-08-072-3/+4
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-08-072-3/+4
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/corelib/doc/src/objectmodel/signalsandslots.qdoc src/plugins/platforms/cocoa/qcocoamenuloader.mm src/plugins/platforms/xcb/qxcbconnection.cpp src/plugins/platforms/xcb/qxcbconnection.h src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/plugins/platforms/xcb/qxcbwindow.cpp tests/auto/gui/image/qimage/tst_qimage.cpp Done-with: Gatis Paeglis <gatis.paeglis@qt.io> Change-Id: I9bd24ee9b00d4f26c8f344ce3970aa6e93935ff5
| | * QObject: do allow setProperty() to change the type of the propertyThiago Macieira2018-08-041-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][QtCore][QObject] Fixed a bug in setProperty() that caused a property change not to take effect if the old value compared equal using QVariant's equality operator, but the values were not strictly equal. Task-number: QTBUG-69744 Change-Id: I00e04a465fcf4fc1a462fffd1547885861a07a64 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | * QDeadlineTimer: Fix documentation typoAndre Hartmann2018-08-011-2/+2
| | | | | | | | | | | | | | | Change-Id: If8f7766ca0698a3defdf9c59c44fb02a8a5b3b62 Reviewed-by: Martin Smith <martin.smith@qt.io>
* | | QTimer: Add const to some singleShot methodsThiago Macieira2018-08-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][QtCore][QTimer] Fixed singleShot() methods that lacked proper "const" qualification to QObject context receivers. Task-number: QTBUG-69800 Change-Id: Ia741b559c24d46c78fb2fffd154865a9cb762473 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | | Fix ASAN error about new-delete-size-mismatch in QVariantSimon Hausmann2018-08-071-1/+2
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We allocate the variant's PrivateShared for custom types with space for the actual custom type right after that, using operator new to allocate the memory and a new calls for the constructors. However to free the memory we merely call delete on the private shared, which upsets ASAN because the size passed to operator delete is the size of the private shared, which is not the same as the size that was provided for the returned address. This is easily fixable by calling the destructor explicitly and calling operator delete with just the pointer. Change-Id: I50afbe0e8afc875c0876e85e02689dcbdc152633 Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Make qcoreapplication_win compile in mingw g++ 8.2Mårten Nordheim2018-08-061-2/+2
| | | | | | | | | | | | | | | | | | "type qualifiers ignored on cast result type [-Werror=ignored-qualifiers]" And preemptively fix Clang nagging about repeated type. Change-Id: I2253b032d1867aa9976b4bdfc0f45023198f917c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Add private helper class QMacScopedObserverTor Arne Vestbø2018-08-061-0/+44
| | | | | | | | | | Change-Id: I993ce32c1f6a6eabdce8d5b2b52d8edb28ca2bfa Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Add a few overrides in Qt CoreAlessandro Portale2018-08-052-2/+2
| | | | | | | | | | | | | | | | | | Clang-tidy says: warning: annotate this function with 'override' or (rarely) 'final' [modernize-use-override] Change-Id: Ic2304cf35f4132ba1f55714493db93836f8b413d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Windows: Refactor the debug operator for the MSG message structFriedemann Kleint2018-08-031-388/+254
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Fix spelling - Use noquote - Make helpers static - Remove C-style casts - Remove Borland-specific code - Streamline code - Use QString::fromWCharArray() - Remove #ifdefery and undefined macros - Fix replicated base "wParam(0x0x0)" caused by formatting "(0x%p)" (MSVC) - Replace the flag/enum lookups with variadic arguments by extending the lookup struct used for messages and helper functions Change-Id: I04d861775f3c306e6d449c5a9b423eb244e99a36 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Windows: Fix QEventLoop::ExcludeUserInputEvents for pointer eventsFriedemann Kleint2018-08-031-13/+18
| | | | | | | | | | | | | | | | | | | | | | | | Factor out the check for user input events from QEventDispatcherWin32::processEvents() to a small helper and add pointer messages (by value as to avoid MinGW issues). Task-number: QTBUG-60437 Task-number: QTBUG-69687 Change-Id: I38bf227f862fcc44177a5027cafe1df49a10a919 Reviewed-by: Andre de la Rocha <andre.rocha@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Merge branch '5.11' into devEdward Welbourne2018-07-313-0/+34
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/library/qmakebuiltins.cpp src/plugins/platforms/windows/qwindowstabletsupport.h src/plugins/platforms/xcb/qxcbconnection.cpp src/plugins/platforms/xcb/qxcbconnection.h src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/plugins/platforms/xcb/qxcbwindow.cpp src/widgets/styles/qstylesheetstyle.cpp tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp Done-With: Gatis Paeglis <gatis.paeglis@qt.io> Change-Id: I000b0eb3cea2a5c7a99b95732bfdd41507cf916e
| * Doc: Extend description of ShortcutOverride eventPaul Wicking2018-07-191-0/+6
| | | | | | | | | | | | | | | | | | | | Better late than never. Task-number: QTBUG-533 Change-Id: Ieb68d510f75553a6aa0a6e9046c11e3a34b8815f Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * Linux: Bypass glibc's broken open() implementationThiago Macieira2018-07-172-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Glibc 2.21 and earlier have a bug that leaves the mode parameter unset when O_TMPFILE is used. So we bypass the glibc implementation and go directly for the syscall. We do this only for 32-bit x86, since of the current, modern platforms, it's the only one that passes parameters on the stack. Technically speaking, the glibc bug applies to all platforms, but it turns out that on all others, it appears to work. By doing this, we have two minor differences: 1) open() is a cancellation point, but syscall() isn't 2) if anyone tries to intercept open() calls via LD_PRELOAD, they're not going to catch Qt's. [ChangeLog][QtCore][QTemporaryFile] Worked around a bug in the GNU C Library versions 2.21 and earlier (used on Linux) that caused temporary files to be created with permissions 000. Task-number: QTBUG-69436 Change-Id: I20fd00e600264ff98c6afffd1540dceea89fa91f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Fix typo as->hasFrederik Gladhorn2018-07-161-2/+2
| | | | | | | | | | | | | | Change-Id: I4f9033660c06686d7b499ec6d28be2c3b64353e2 Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Martin Smith <martin.smith@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | testlib: Move qtestsystem helpers to their respective modulesTor Arne Vestbø2018-07-163-1/+221
| | | | | | | | | | | | | | | | | | | | | | | | | | Having the helpers in each respective module lets us implement the helpers using private APIs without forcing the test to add private dependencies. It also makes it easier to test Qt using a third party testing framework (for running the test suite), while still using the helpers for ensuring tests behave expectedly. Change-Id: I2a6ce24526ed345f3513548f11da05c7804c203f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | QThread: Centralize the creation of the event dispatcherThiago Macieira2018-07-142-5/+3
| | | | | | | | | | | | | | | | | | | | | | In some places we call startingUp(), in others we don't. It's probably ok for those that have just created an object of a given class, which knows whether the virtual call is necessary or not. But for the generic case, we do call it. Change-Id: If48c5c2e920c433298f1fffd153ee1cc75703204 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Allow loading of empty translation filesKai Koehne2018-07-121-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not return false for loading an empty .qm file - that is, a valid file without any translations. We're already shipping empty .qm files for English translations of Qt since a while, mainly as a stop for the QTranslator::load(const QLocale &, ...) logic. Note that QCoreApplication::installTranslator() will still return false for an empty translation file - which is ok, because it arguably does not make much sense to install it. [ChangeLog][QtCore][QTranslator] It is now possible to load qm files without any translations. This is particularly useful for the language the untranslated strings are written in; logic to load translations can now handle the source language like all other languages. Task-number: QTBUG-31031 Change-Id: Ibcb84aa755538cb2fa21b14f8635295a58440bbb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Tracepoints: trace QObject construction and destructionGiuseppe D'Angelo2018-07-041-0/+5
| | | | | | | | | | Change-Id: I10f5ef391a2d3059ed5e8a26afe5e191adc31e85 Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | Add qbswap for a memory regionThiago Macieira2018-07-041-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | The compiler was generating some vectorized code for qresource.cpp but it wasn't very efficient. So improve upon it and make use in other places where we read UTF-16BE strings. [ChangeLog][QtCore] Added an overload of q{To,From}{Big,Little}Endian that operates on a memory region. Change-Id: I6a540578e810472bb455fffd1531fa2f1d724dfc Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | CBOR: Complete the conversions between CBOR, JSON and Qt meta typesThiago Macieira2018-07-041-5/+338
| | | | | | | | | | | | Change-Id: I56b444f9d6274221a3b7fffd150d3130db6ef1a0 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Metatype: make the Qt CBOR value-like types built-in meta typesThiago Macieira2018-07-044-3/+38
| | | | | | | | | | | | | | | | This change only adds them to the registry and reserves the IDs. The next commit will handle conversions. Change-Id: I56b444f9d6274221a3b7fffd150d2d49f40940c2 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devLiang Qi2018-07-027-5/+62
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/platforms/cocoa/qnsview.mm src/plugins/platforms/cocoa/qnsview_dragging.mm src/plugins/platforms/ios/qiosinputcontext.mm src/plugins/platforms/xcb/qxcbconnection.cpp src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/plugins/platforms/xcb/qxcbwindow.cpp src/tools/androiddeployqt/main.cpp Was moved from qttools into qtbase in 5.11. So re-apply 32398e4d here. tests/auto/corelib/global/qlogging/test/test.pro tests/auto/corelib/global/qlogging/tst_qlogging.cpp tests/auto/corelib/io/qfile/tst_qfile.cpp tests/auto/corelib/kernel/qtimer/tst_qtimer.cpp tests/auto/corelib/thread/qthreadstorage/test/test.pro tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp tests/auto/widgets/kernel/qapplication/test/test.pro Done-with: Gatis Paeglis <gatis.paeglis@qt.io> Done-with: Mårten Nordheim <marten.nordheim@qt.io> Done-with: Oliver Wolff <oliver.wolff@qt.io> Change-Id: Id970486c5315a1718c540f00deb2633533e8fc7b
| * Fix metatype trait for types that are both QObject and Q_GADGETDaniel Vrátil2018-06-301-2/+2
| | | | | | | | | | | | | | | | | | | | Fixes ambiguous template instantiation for types that derive from both a QObject and Q_GADGET. For such types we treat them only as QObjects as they extend the functionality of the gadget. Task-number: QTBUG-68803 Change-Id: Ic42766034e14e5df43c4e6f7811e2c0be1dc7e74 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * Doc: Fix signal name in QTimer documentationJoerg Bornemann2018-06-221-1/+1
| | | | | | | | | | | | | | | | | | | | QTimer emits timeout(), not activated(). Task-number: QTBUG-68798 Change-Id: I4fffce01d409e1fbc433e11c962c4e1921f76f2d Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * Doc: Add missing full stops in briefsPaul Wicking2018-06-211-1/+1
| | | | | | | | | | | | Task-number: QTBUG-68933 Change-Id: I3f2a9f8c562f9a44bb32bddd31d75abbfe6de04d Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
| * Merge remote-tracking branch 'origin/5.11.1' into 5.11Qt Forward Merge Bot2018-06-193-1/+53
| |\ | | | | | | | | | Change-Id: I9a4571ccf826a86e055dfbba23b5e5cbd8ea55e8
| | * Access private properties via sandbox-safe API on Apple OSesTor Arne Vestbø2018-06-143-1/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We detect whether or not we're running inside a sandbox and bail out if so. We use runtime lookup of the property, so that static analysis of the application will not mistakenly think we're using the API in sandboxed situations. Change-Id: I5f5c42f5a4a44b62de061d945b62ac63167ece09 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
| | * Fix warning about receiver 'UIApplication' being a forward classTor Arne Vestbø2018-06-091-0/+4
| | | | | | | | | | | | | | | Change-Id: Iffe11d85916274c85c16314c44b023887b43322d Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| * | Doc: Point to the SG-10 SD-6 as a requirement for C++14 featureThiago Macieira2018-06-161-0/+5
| |/ | | | | | | | | | | | | | | Task-number: QTBUG-68702 Change-Id: I04b94079b6da48f39a82fffd153568f8dab3ef1b Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Tracepoints: refactor the existing tracepoint namesGiuseppe D'Angelo2018-06-281-2/+2
| | | | | | | | | | | | | | | | Use CamelCase, like the API they're tracing. Change-Id: Ie718ab624d17c9186bcf05cc1276c8eccad7f454 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | Tracepoints: add tracing for QEventsGiuseppe D'Angelo2018-06-282-4/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add tracepoints in all the main codepaths for event handling: * QEvent ctors/dtor * QCoreApplication::postEvent, sendEvent and sendSpontaneousEvent * QCoreApplication / QApplication::notify, and around the handling of event filters as well I'm switching the name of the tracepoints themselves to have the very same casing of the functions in Qt's own source code, this improves readability a lot. The pre-existing ones will be changed in an upcoming patch. Change-Id: Iae2ba2bfdd76a82c85445bb5b86434e910427a70 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | QMetaType: remove compatibility code for MSVC 2013Thiago Macieira2018-06-251-20/+6
| | | | | | | | | | | | | | We use the constexpr code for MSVC 2015. Change-Id: I91f63171877743978cb3fffd153ad52a3ee293d0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Code tidy: replace a for loop with an algorithmGiuseppe D'Angelo2018-06-081-3/+1
| | | | | | | | | | Change-Id: Ie988101eb3165b92c5f4a140e4c301b9a46263bf Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge "Merge remote-tracking branch 'origin/5.11' into dev" into ↵Liang Qi2018-06-083-11/+48
|\ \ | | | | | | | | | refs/staging/dev