summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Remove Qt6 switches from QtGuiAllan Sandfeld Jensen2021-05-0512-70/+0
| | | | | | | Removing now dead code Change-Id: I021539da6517fdb8443f8ae9431fc172b7910cfc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* QWidgets: show SoftwareInputPanel for key releaseBartlomiej Moskal2021-05-054-3/+14
| | | | | | | | | | | | Virtual keyboard should be shown when editable widget get focus by key (like Tab or BackTab). Before this change SoftwareInputPanel was handled only for mouseKeyRelease event Task-number: QTBUG-61652 Pick-to: 5.15 Change-Id: I85f80422b596592a04c2f9af214f991c471485c8 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
* Doc: Fix documentation warnings for QJni* classesTopi Reinio2021-05-056-42/+82
| | | | | | Pick-to: 6.1 Change-Id: Iab836fbdf649f1b3b60e88d32266361299ac4bb2 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Update bundled libjpeg-turbo to version 2.1.0Eirik Aavitsland2021-05-0539-667/+1079
| | | | | | | | | [ChangeLog][Third-Party Code] libjpeg-turbo was updated to version 2.1.0 Pick-to: 6.1 6.0 5.15 5.12 Change-Id: I82a58609120923c18f6031fec7d597138ec473ee Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Simplify bundled libjpeg buildEirik Aavitsland2021-05-054-2/+1
| | | | | | | | | | | | Move the config headers of the bundled libjpeg back into its source directory, where they originally live, to avoid having to trick with the include path to find them. The goal is unification across maintained Qt branches, making version updates simpler. Pick-to: 6.1 6.0 5.15 5.12 Change-Id: I5b574446bbd264b0a1cb3efceb4c1cb7203cac7d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix rare integer overflow in text shapingPaul Olav Tvete2021-05-051-1/+2
| | | | | | | | | | With extreme painter scaling, linearAdvance may be too large to fit in an unsigned short. Fixes: QTBUG-91758 Pick-to: 6.1 5.15 Change-Id: I7bbe6e77ec9bcef4aa5259da1d3000ed1a8eb27a Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Edid parser: fix performance issuesGiuseppe D'Angelo2021-05-052-34/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A) When a QEdidParser gets built, the code populates a QMap by parsing the system's pnp ids file. With > 2000 entries in the file, that's 2000+ allocations for the QMap, plus 4000+ allocations for key/value (QStrings), plus a bunch of temporaries created for processing. What's more, on XCB and EGLFS, a QEdidParser gets built *per screen*; the map is not shared and gets rebuilt for each screen. It's however completely unnecessary to keep this map in memory. The lookup is required only once per monitor change event, which, apart from application startup, is an extremely rare event. When such an event happens, and we have to lookup a vendor id, we can just process the pnp database "on the fly", therefore removing the constant memory usage from the application run. In order to also avoid an allocation spike, just don't build a map at all: simply process the file, using no memory allocations, one line at a time while searching for the vendor id. I was unable to find information about the file format, so I am not sure if it's guaranteed that it's kept sorted by id (this could allow for a faster fail path). B) In case of a cache miss, a hardcoded vendor table is used to try and identify the manufacturer. Look up in the hardcoded table using binary search, rather than a linear scan, and don't allocate memory for each element processed in the list (!). The size of the list (2000+) is big enough to completely justify binary search. C) Drive-by, remove a TOCTOU bug when opening the system file. D) Drive-by, fix the includes in the header to IWYU. Change-Id: I57c7cbd09a145c6efe3023c227ed36b24bed96f9 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Write out the HTML correctly for nested listsAndy Shaw2021-05-052-3/+27
| | | | | | | | | | | | | | When we are having nested lists then we need to ensure that the HTML is outputted correctly so that the closing list and item tags are placed in the right order. [ChangeLog][QtGui][QTextDocument] The output of toHtml() now handles nested lists correctly. Fixes: QTBUG-88374 Pick-to: 6.1 5.15 Change-Id: I88afba0f897aeef78d4835a3124097fe6fd4d55e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Export text-decorationAllan Sandfeld Jensen2021-05-051-7/+22
| | | | | | | | | It used to be ignored because we couldn't disable it, but that works fine now. So re-enable it. Fixes: QTBUG-91171 Change-Id: I4cf966211bb200b73326e90fc7e4c4d3d4090511 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix assertion on matchingLocales(Abhkazian, Any, Any)Edward Welbourne2021-05-051-3/+3
| | | | | | | | | CLDR v39 has no locales for Abkhazian, so the locale_index[] entry for it actually indexes the last entry before the next language up the enum. This has m_language_id less than Abkhazian. Change-Id: If8b88f30476a981b3ee00ff8760a46ede0b7aab7 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* iOS: Keep undo/redo widgets enabled on the undo shortcut bar after undoTamás Martinec2021-05-051-1/+14
| | | | | | | | | | | Having two undo/redo operations on the rebuilt undo stack always enables the undo/redo widgets on the shorcut bar. This might be more desirable than the current behavior that only allows one undo from the shortcut bar. Pick-to: 6.1 6.0 5.15 Fixes: QTBUG-63393 Change-Id: I2c99f27895def47b58534035461ceb7b4e5c3057 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* Fix set*Field JNI template callsAssam Boudjelthia2021-05-051-6/+6
| | | | | | | | | | | The calls were trying to pass a JNIEnv* from a QJniEnvironment using conversion operator which was removed, and weren't detected since they are templates and were missing tests. This fix that and add test cases for setField() and setStaticField() calls. Pick-to: 6.1 Change-Id: I6e1e6b7f557bbc664248ad364c48d63f58b70756 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Add new app permissions API under QCoreApplicationAssam Boudjelthia2021-05-0511-4/+827
| | | | | | | | | | | | | | | | | | | | | The API allows users to request and check the status of various permissions. A predefined enum class of the common permission types on different platforms is used to allow requesting permission with a common code. Platform specific permissions are defined only on their relevant platform. For permissions that are not predefined, they can be requested via a string variant of this API. This adds the Android implementation only. [ChangeLog][QtCore] Add new API for handling app permissions with an initial implementation for Android. Task-number: QTBUG-90498 Change-Id: I3bc98c6ab2dceeea3ee8edec20a332ed8f56ad4f Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Android: handle ImEnterKeyType flagBartlomiej Moskal2021-05-052-1/+31
| | | | | | | | | | | | | | | | | Replace KEYCODE_ENTER to KEYCODE_TAB if IME_ACTION_NEXT or IME_ACTION_PREVIOUS flag is set. Before this change any of imKeyEntryType [1] was handled as default return key. After the fix, event is changed to Tab or Backtab (if any of mentioned flag is set) [1] https://doc.qt.io/qt-5/qt.html#EnterKeyType-enum Fixes: QTBUG-61652 Pick-to: 5.15 Change-Id: Ia27aa308fdae75bc17d1e892d17048c5afa3e2cb Reviewed-by: Rami Potinkara <rami.potinkara@qt.io> Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
* cocoa: move DEBUG_PASTEBOARD into logging categoryLiang Qi2021-05-053-62/+21
| | | | | | Pick-to: 5.15 6.1 Change-Id: I8f49c030588122adff3c0eab4189bfa7e6aeff09 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* QAbstractProxyModel: port to new property systemIvan Solovev2021-05-043-6/+96
| | | | | | | | | | | | | | The biggest trick here is the getter (QAbstractProxyModel::sourceModel), which is returning nullptr, while internally using a global staticEmptyModel() instance. This lead to inconsistency while binding to a proxy model without source model. The bound object would point to staticEmptyModel() instance, while sourceModel() getter returns nullptr. To solve this issue a custom QBindableInterface is implemented. Task-number: QTBUG-85520 Change-Id: I597df891c7e425d51b55f50ccbacabdfe935cbac Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Fix changes' docTimur Pocheptsov2021-05-041-1/+1
| | | | | | | | | The name of attribute has a suffix 'Attribute' which was missing. Pick-to: 6.1 Fixes: QTBUG-93416 Change-Id: I9ce96efb38caa03957ddbdb13a5e61767e8e74f1 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Tweak naming of QT_OVERLOADED_MACRO variantsTor Arne Vestbø2021-05-044-20/+20
| | | | | | | | Add a _ suffix before the number of arguments, to improve readability of the argument-specific functions. Change-Id: I1dfc4f381450825dd143ece524bb10e117c09971 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QPrintEngineMac: code tidiesGiuseppe D'Angelo2021-05-041-4/+4
| | | | | | | | | | | In preparation for a change (operator&(enum, flags) producing a QFlags, not an int), just go through operator&(flags, flags). This removes the need for a cast to the _enum_ type (although it requires a enum->flag conversion, which however makes perfect sense.) Change-Id: I159ee14d894c10365f53ca378bcb18bcf3f89dff Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Ensure setDateTime clears status also when shortEdward Welbourne2021-05-041-1/+3
| | | | | | | | | | | Previously, if multiplication overflowed when trying to set the date and time of a formerly short-form QDateTime, its status didn't get set to reflect the failed validity check. Added a test that now correctly detects that it's produced an invalid date-time on overflow, where previously it produced a wrong valid date-time. Change-Id: Id46ca34d1e32e9b9b0630f3723cefd1c13b5761e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Delete less-than operator for QKeyCombinationVolker Hilsheimer2021-05-041-0/+2
| | | | | | | | | | | | | | | | | | QMetaType relies on QTypeTraits to identify whether a type provides operator<. Due to the the deprecated implicit conversion to int, this results in several screens of deprecation warnings when using QKeyCombination in a signal parameter or as a property type. QKeyCombination has no ordering semantics (is Alt+F5 larger than Control+Up?), so delete the operator. [ChangeLog][QtCore][QKeyCombination] Potentially source-incompatible change: the less-than operator for QKeyCombination has been deleted. Code relying on the deprecated implicit conversion to int will no longer compile. Use QKeyCombination::toCombined explicitly. Change-Id: Ic8522b88d68063f74b5a5582c51aee8e18982331 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QUntypedBindable: Allow controlled access to internalsFabian Kosmale2021-05-042-0/+14
| | | | | | | | | | In declarative, we need direct access to the bindable's pointers. Enable this via a internal only helper struct in qproperty_p.h. Change-Id: I56e4622f570ff08f85f1161af608658ea510671e Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Moc: parse trailing return typeMårten Nordheim2021-05-041-9/+21
| | | | | | | Pick-to: 5.15 6.1 Fixes: QTBUG-71123 Change-Id: I1c3749f0892fddcc433c9afcb1d6d7c30c97c9d9 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* iOS: Implement QIOSScreen::logicalBaseDpi()Morten Sørvig2021-05-032-2/+2
| | | | | | | | | | | | | | | logicalDpi() and logicalBaseDpi() should return the same DPI on iOS, in order to make Qt not apply a scale factor. Accomplish this by overriding logicalBaseDpi() instead of logicalDpi(). The default QPlatformScreen::logicalDpi() implementation will then call logicalBaseDpi(). Pick-to: 6.1 Fixes: QTBUG-92579 Change-Id: I7a27cf61f0154cef32098069ab3dfb29ad6acf27 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Add QUntypedBindable::metaType functionFabian Kosmale2021-05-032-4/+31
| | | | | | | | | | | | | | | This enables checking the metaType of a QUntypedBindable in the public interface. In addition, work around an oversight that can only be fully addressed in Qt 7: The metatype function pointer does not take a QUntypedPropertyData * parameter. However, we need this functionality for an efficient QBindable proxy implementation in declarative (which is needed to implement interceptors there). To work-aronud this in Qt 6, reuse the value getter and turn it into a metatype getter if the value pointer is flagged. Change-Id: Ia3cce08ea761fce57bce59e02212525b996f2fee Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Q(Untyped)Bindable: Print warnings when operations failFabian Kosmale2021-05-032-6/+75
| | | | | | | | | Instead of silently failing, we now print an explanatory warning to aid with debugging. Task-number: QTBUG-89512 Change-Id: I36dd2ce452af12d0523c19286919095e366bd390 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* QJniObject: add callStatic[Object]Method overloads for jmethodIDIvan Solovev2021-05-032-0/+80
| | | | | | | | | | | | This patch extends the QJniObject::callStatic[Object]Method functions with the overload which accepts a jmethodID parameter. This can be convenient when the method id is already cached and you do not want to query the method by its name and signature. Task-number: QTBUG-92952 Change-Id: Ib0852a5a27da2a244ac63112784751ef9e32cfa5 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* QJniEnvironment: extend APIIvan Solovev2021-05-032-5/+73
| | | | | | | | | | | | | | This patch adds some convenience methods to QJniEnvironment API: * an overload of registerNativeMethods() that accepts jclass instead of const char *className. * a findMethod() function is added to query a methodID of a static or nonstatic method by its name and signature. Task-number: QTBUG-92952 Change-Id: Ib1bc892decea97e625c4822888b6183af6edd6dc Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* uic: Fix font family code generation for pythonFriedemann Kleint2021-05-033-2/+12
| | | | | | | | | | | Amend the code introduced by d8602ce58b6ef268be84b9aa0166b0c3fa6a96e8 to generator correct code for Python. Change-Id: I71fc9a1830d6bd591d32ce08002572c29f02a27f Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io> Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io> (cherry picked from commit b2ebc64dd9914359fe8acf2bc9960e341e98cf80) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* rhi: gl: Sanity check vertex outputs and fragment inputsLaszlo Agocs2021-05-032-0/+26
| | | | | | | | | | | | | | | | | | | | | | Print a warning if the name for a given location does not match. This is relevant only to OpenGL and only to < 330 GLSL versions: there the location qualifier is simply not present in the actual shader code and all matching is name-based. This leads to hard to discover problems in Qt Quick ShaderEffects for instance, where providing a custom fragment shader but using a built-in vertex shader is common, and one may be tempted to use a name other than qt_TexCoord0 for the input variable in the fragment shader. Unfortunately this breaks, sometimes silently, when not having location qualifiers. (and we won't, neither in GLSL 120 or 150 which are the standard for Qt Quick) Make this situation recognizable by printing a warning to the debug output. Pick-to: 6.1 Task-number: QTBUG-92500 Task-number: QTBUG-93370 Change-Id: I0d0bcc135e23a228783f7633f872e39c4e43bb93 Reviewed-by: Christian Strømme <christian.stromme@qt.io>
* QSqlTableModel::orderByClause(): Quote the table nameFriedemann Kleint2021-05-031-1/+2
| | | | | | | | | | | This ensures correct handling of names with special characters. Pick-to: 5.15 6.1 Fixes: QTBUG-92584 Change-Id: I95c7c54d9c7ee00b221a55f3d07ef1ec3a3bd217 Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Document that a toplevel window QSizeGrip doesn't get rendered on macOSVolker Hilsheimer2021-05-031-0/+4
| | | | | | | | | | | | | Amends b8947e9194f0f88f464448ac51f6a05113d36a33 which removed the grip's rendering unless they are in a QMdiSubwindow. This was a deliberate choice to comply with the macOS HIG. Rather than putting in another widget attribute, document that another style can be used. Fixes: QTBUG-90945 Pick-to: 6.1 Change-Id: Id227fd31d8bafaaab7005e5ff5340da96c0f65b3 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Disable spurious MSVC warning C4273 in Qt Gui, Qt OpenGLKai Köhne2021-05-033-0/+20
| | | | | | | | | | | | For optimized/release builds, cl 19.28 produces some false positive "potential divide by 0" warnings even for code where no valid code path can lead to such a division. Fixes: QTBUG-92940 Pick-to: 6.1 Change-Id: I461f9104d7b9dc2d74839bf30bebb2b9d4cf2db3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Parse QT_SCREEN_SCALE_FACTORS spec only onceMorten Johan Sørvig2021-05-032-36/+66
| | | | | | | | | | Move parsing to initHighDpiScaling() and store the parsed factors in a vector. The factors are later applied in updateHighDpiScaling() where the factor list is compared to the screen list. Change-Id: I59fc67b84932dbe69868a3683686a91e51333104 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Android: Fix Application becomes unresponsive issuePekka Gehör2021-05-035-2/+24
| | | | | | | | | Block key events until the plugin is running. Fixes: QTBUG-67944 Pick-to: 5.15 6.1 Change-Id: Iea47f2e94d850141834a7e8fc26218be2cacf660 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* QFlags::setFlag: don't go through Int, go through QFlags itselfGiuseppe D'Angelo2021-05-031-1/+1
| | | | | | | | Avoid a "detour" outside QFlags' type safety: operator~ is defined on QFlags already, use that one. Change-Id: Iedd07d1652b8f92e3881298ceafcd5c761346bb0 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QCoreApplication::applicationFilePath: add ELF auxval supportThiago Macieira2021-05-021-4/+21
| | | | | | | | | | | This implements getting the executable file name for FreeBSD. Linux has a similar functionality (but called AT_EXECFN), but the /proc/self/exe trick is actually better: it returns a full canonical path instead of the argument passed to execve(), and it follows a rename of the executable. Change-Id: I7a386ad4f0cb4e2ba629fffd16789acda415213f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
* qdbus: add support for "aay" (QByteArrayList)David Faure2021-05-021-0/+3
| | | | | | | | | (I wish these common mappings were centralized though, so that annotations in the XML file wouldn't be needed) Pick-to: 6.0 6.1 5.15 Change-Id: Ie3e8731e44b6e0338c8a044408c34160cf0a3a1e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QLocalSocket: declare operators for the SocketOptions flagGiuseppe D'Angelo2021-05-021-0/+2
| | | | | | | The flag existed, without the operators. Change-Id: I386f76b358422fbfc3fbd7b227901803ec27202d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QFlags: streamline some macrosGiuseppe D'Angelo2021-05-021-10/+6
| | | | | | | | | | | | There's little point at keeping the separate Q_DECLARE_INCOMPATIBLE_FLAGS macro, only to invoke it exactly once (from the expansion of Q_DECLARE_OPERATORS_FOR_FLAGS). Besides, Q_DECLARE_OPERATORS_FOR_FLAGS already had some "incompatible" operators in its expansion (the deleted arithmetic ones), so adding the "incompatible" ones in there is consistent. Change-Id: I591d57af8eec5b03ecaa7a3b0de23a967b13f7a5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QLocalSocket: fix inclusions in namespaced buildsGiuseppe D'Angelo2021-05-021-1/+4
| | | | | | | | | An include statement appeared after opening the Qt namespace, thus injecting symbols in there. Move it outside. Change-Id: I8e95e821b36ad4e4ceed5b0645bf8ebf7e531e06 Pick-to: 5.15 6.0 6.1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QFlags: remove the doc-only declaration of copy operationsGiuseppe D'Angelo2021-05-021-4/+0
| | | | | | | qdoc is now able to recognize the special members automatically. Change-Id: I773d94d9e622e67340f3acdbe8bff66143ee1aaa Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QFlags: kill Q_NO_TYPESAFE_FLAGSGiuseppe D'Angelo2021-05-021-13/+0
| | | | | | | The macro is undocumented and unused. Change-Id: I5c09f4e0e2d41e13d2678e2936e0d0e39ed69639 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QUrl: code tidiesGiuseppe D'Angelo2021-05-021-9/+9
| | | | | | | | | Change some casts of enumeration/flag types from int to uint. In fact, the enumerations (and flags) in question are *defined* to be backed by unsigned int. Change-Id: I757ded61a26fe979deeaa1e5a524478102960ffe Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QRandom: enable a check also on MSVCGiuseppe D'Angelo2021-05-021-7/+2
| | | | | | | | We require MSVC 2019 these days, so we can actually check for constexpr initialization. Change-Id: Idc14b785d51c8baaa0bca0ec7dd2e8a85a7e2092 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QRandom: drop a usage of std::is_literal_typeGiuseppe D'Angelo2021-05-021-1/+0
| | | | | | | | | It's deprecated/removed, and indeed doesn't check anything that it's not also already being checked by the previous line. Change-Id: Ic80ca43f390dd989ced69f196efa7313069e7c6d Pick-to: 5.15 6.0 6.1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Revert "Include qsimd.cpp in bootstrap build"Thiago Macieira2021-05-011-1/+0
| | | | | | | | | | | | | | | | | | | | | | This reverts commit 9268cb808510beb3f9c50fba273e67e5b560c3e6. That was done in the mistaken assumption that the bootstrap library needs the fast hashing algorithms. It doesn't, since it's only used for tools that need deterministic output anyway. This fixes the build on x86 where the compiler is enabling rdrand by default (Ivy Bridge systems, but also -march=haswell and the GCC 11 -march=x86-64-v3): qsimd.cpp:750:37: error: redefinition of ‘qsizetype qRandomCpu(void*, qsizetype)’ 750 | QT_FUNCTION_TARGET(RDRND) qsizetype qRandomCpu(void *buffer, qsizetype count) noexcept | ^~~~~~~~~~ In file included from qsimd.cpp:44: qsimd_p.h:354:25: note: ‘qsizetype qRandomCpu(void*, qsizetype)’ previously defined here 354 | static inline qsizetype qRandomCpu(void *, qsizetype) noexcept | ^~~~~~~~~~ Change-Id: I755911ae7d0341f49039fffd167afc7540bf0dd6 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* QHash: disable the AES based one on the bootstrap libraryThiago Macieira2021-05-011-2/+2
| | | | | | | | | | | | | | The bootstrap library doesn't need it. All bootstrapped tools are expected to produce deterministic output, given the enforced seed of 0: #ifdef QT_BOOTSTRAPPED // the seed is always 0 in bootstrapped mode (no seed generation code), // so help the compiler do dead code elimination seed = 0; #endif Change-Id: I755911ae7d0341f49039fffd167afc934ff1c9e1 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Add grabber context pointersShawn Rutledge2021-05-012-0/+26
| | | | | | | | | | | | | | | | | | | | | | In Qt Quick we now need to keep track of which QQDeliveryAgent is responsible when a point is grabbed, either passively or exclusively. When we re-deliver to that grabber, we need to do it via the same agent, so that the same scene transform is used, and the grabber will see the event in the correct coordinate system. It's easier to track this mapping here instead of in a separate map in Qt Quick. (This is an alternative to 40330b8f0a717098982d1f54f34a18a8262b1f55: it was not possible to use QFlatMap, because we need to keep the passive grabbers in the same order as they were added. We don't use a QList of structs, because QPointerEvent::passiveGrabbers() needs to return a QList of just the grabbers, and it's not as efficient to construct that list in the accessor.) Change-Id: I457114f816736749d2ea5ee48fa03524eb93d2d0 Pick-to: 6.1 Task-number: QTBUG-92944 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* uic: Update qclass_lib_map.hFriedemann Kleint2021-05-011-158/+7
| | | | | | Task-number: PYSIDE-1404 Change-Id: I6101402891749a767119a5688d9a5a6299ee840d Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>