summaryrefslogtreecommitdiffstats
path: root/src/input/backend
Commit message (Collapse)AuthorAgeFilesLines
* Use QList instead of QVector in implementation and docsJarek Kobus2020-07-0923-68/+61
| | | | | | | | | Fix some const correctness. Use list-initialization. Task-number: QTBUG-84469 Change-Id: I9c56742581f48f89a3b02e4121fae414117c7a25 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QAspectJob: switch to using std::vectorPaul Lemire2020-07-022-3/+3
| | | | | Change-Id: I1314bd4d37ad17442ebd6287f571e41bc5d25490 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Input Aspect: Dispatch events directlyMike Krus2020-07-0115-957/+201
| | | | | | | | | | | | | Rather than accumulating events during a frame, they are now directly delivered to the device handlers synchronously. This removes the need to use jobs for updating the nodes. Updating axis and logical devices remains done using jobs at every frame. Change-Id: I2853a72cfe68201d8a6eb44d37bc64c9f50efd4f Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Add ; to Q_UNUSEDLars Schmertmann2020-06-244-5/+5
| | | | | | | | This is required to remove the ; from the macro with Qt 6. Task-number: QTBUG-82978 Change-Id: I2e126d0be8efa0aa89c4a91a681b549f38c8cec4 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Clean input event handlingMike Krus2020-06-236-230/+53
| | | | | | | | | - Clean up header dependencies - Remove EventSourceSettingHelper as threading is no longer an issue - Remove some locks which are no longer needed Change-Id: I071173d3b4c681f5420bd7a1f4cb13f80a9c9b2f Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* MouseEventFilter: use QMouseEvent::position for move eventsPaul Lemire2020-06-161-1/+1
| | | | | Change-Id: I7ea8811b4d23e24d7534f30d3265da2b4b5ab225 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Update dependenciesPaul Lemire2020-06-121-3/+3
| | | | | | | | | | | - QOpenGLEXtensions now private API in GUI - Removed support for tessellation in GL 3 - Use QMouseEvent position - Removed use of QDesktopWidget - Adapt to change in QQuickWindow API Change-Id: I79df8780b9d02c6d2a3620529f5f41daec7120fe Reviewed-by: Mike Krus <mike.krus@kdab.com>
* QResourcesManager: switch to std::vectorPaul Lemire2020-05-201-1/+1
| | | | | | | | | Given QVector is potentially slower for this use case and the fact that QVector might become QList in Qt6, we're better of using the std. Change-Id: If2c403439ddb856b60f8bfd5ae7c6ec1cb2c892a Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Fix build for Qt6Mike Krus2020-05-061-0/+1
| | | | | | | | | | | | | - updated dependencies, excluding qtgamepad for now - fixed issues with Q_PROPERTY not supporting forward declarations - fixed for changes in QtQuick private API - fixed for changes in QtOpenGLVersionFunctions API - fixed for removal of QT_OPENGL_ES* macros - fixed for changes in QtConcurrent API - fixed RHI based build Change-Id: I42ccd2f101b7f0a78e2860c6d551722bf6710a11 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Merge remote-tracking branch 'origin/5.15' into devMike Krus2020-04-271-0/+1
|\ | | | | | | Change-Id: Id669d5c1aab29965eac0dabd1cb497e908dac23e
| * Implement Mouse Click and Double Click on MouseHandlerMike Krus2020-03-191-0/+1
| | | | | | | | | | | | | | | | Looks like it actually never worked. Task-number: QTBUG-75219 Change-Id: I54e7c58be57c41461c95c48ec3e76aa45bf340a1 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Add QBackendNode::syncFromFrontEnd to public APIMike Krus2020-02-271-1/+1
| | | | | | | | | | | | | | | | | | Removes need to per aspect overrides of QAbstractAspectPrivate::syncDirtyFrontEndNode which was required in Qt5 to preserve BC. Change-Id: Ib3b05af1c3ded1c985d35e4dec0fe203cdc907cb Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Remove deprecated classes and functionsPaul Lemire2020-02-1119-30/+30
|/ | | | | | | Mostly old messaging API Change-Id: I17eb2206b2ede56d2f7d36375d5e711d6149019f Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* QMouseDevice: add updateAxesContinuously propertyPaul Lemire2020-01-282-2/+11
| | | | | | | | | | | The default behavior is to only update axes when one of the mouse buttons is pressed. This property, when enabled, allows to record X/Y axes value changes regardless of the state of the mouse buttons. [ChangeLog] QMouseDevice add updateAxesContinuously property Change-Id: Ib54a1e54c6c278ea08722760c2d317ec46437b2f Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Revert "Update jobs to remove post FF changes"Mike Krus2019-12-0312-7/+19
| | | | | | | d521b994450f0a4febbd789ba66701ba24fdbe22 Change-Id: Ibe6d608e8400e69b50775c0eb156e74e4e90b25c Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update jobs to remove post FF changesMike Krus2019-10-2212-19/+7
| | | | | | | Made the d_ptr private again. Change-Id: Ia5ba23b03cd22290d5c922e9a1c657a67ff98977 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Fix Coverity warningsMike Krus2019-10-212-0/+2
| | | | | Change-Id: I00c875b48d838170fddf0b92f0ac5592828c6f0f Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Clean up old property update codeMike Krus2019-10-202-2/+0
| | | | | | | Remove useless includes, clear up commented out or unused code Change-Id: Id3382b16108d79f1e2522d43463c8d70aef8fcb2 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Update MouseEventDispatcherJob to use direct syncMike Krus2019-10-114-44/+45
| | | | | Change-Id: I972765a3937e580271127d7aa7e3cb76d76de818 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update LoadProxyDeviceJob to use direct syncMike Krus2019-10-113-12/+41
| | | | | Change-Id: I6d49abd28a665f89096ec2baaa861490c071d3d3 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update keyboard handling jobs to use direct syncMike Krus2019-10-116-33/+78
| | | | | Change-Id: I5284594ac1c23e59cf1d55ad90032c8cb89df657 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update AxisAccumulatorJob to use direct syncMike Krus2019-10-113-23/+40
| | | | | Change-Id: I4e64fa9f94dad1392b80851c2a6d8d4e013147f7 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update UpdateAxisActionJob to use direct syncMike Krus2019-10-094-25/+63
| | | | | Change-Id: I227e1a5005a9001ac49d8b29daeb23be25fda53b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Clean up includesMike Krus2019-10-0111-20/+0
| | | | | | | | | Remove include statements for classes that are no longer used. Makes it easier to find remaining use cases that need addressed before complete removal in Qt 6. Change-Id: I60529ba1929ad64b162d3847d5df47cde2a60dad Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update QPhysicalDeviceProxy to use direct syncMike Krus2019-10-012-11/+18
| | | | | Change-Id: I0126310365663ae1be1d1cb8ebd4a896a5712c4a Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update QInputSettings to use direct syncMike Krus2019-10-012-20/+10
| | | | | Change-Id: Ifb5959025e9016525f8c2d57a94fed103b5b6b1a Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update QLogicalDevice to use direct syncMike Krus2019-10-012-38/+12
| | | | | Change-Id: I6e176c19ceda3ca1c0bf03da4d78fe92ec3344a7 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update input action classes to use direct syncMike Krus2019-10-018-115/+34
| | | | | Change-Id: I6126a9b51e5d681ad312bf1df5ca694c6d712294 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update Axis Input classes to use direct syncMike Krus2019-10-016-66/+30
| | | | | Change-Id: I22b0bb0fdf966cba536676e360dae5c9701e9ecb Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update QMouseHandler to use direct syncMike Krus2019-10-012-24/+13
| | | | | Change-Id: Ia3fe8a32ca2f750c866f8df91e53ff0ea4d53dcc Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update QAxisAccumulator to use direct syncMike Krus2019-10-012-32/+17
| | | | | Change-Id: Ie68ace96dd3367533508c44e5c5ab8c199b81ce9 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update QKeyboardHandler to use direct syncMike Krus2019-10-012-29/+21
| | | | | Change-Id: I08fdf7d4beccc512f84e70449ed706eab6df7d0b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update device nodes to use direct syncMike Krus2019-10-019-109/+57
| | | | | Change-Id: Ic93968816b719ff407db1d1f2f67d906fab3ca0a Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update QAxisSetting to use direct syncMike Krus2019-10-012-27/+13
| | | | | Change-Id: Ib8067fe61bb0fc1994a4cdfff912e454a0799d44 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update QAction to use direct syncingMike Krus2019-10-012-31/+11
| | | | | Change-Id: I097be63cf17bfa322a87900fd8d45bb59bc344a8 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update QAxis to use direct syncMike Krus2019-09-302-35/+14
| | | | | Change-Id: Id159885d3c3ef4f2582a7b308350c6b43182f521 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Enable direct syncing on input aspectMike Krus2019-09-303-0/+155
| | | | | | | | | Requires adding new intermediate base class. Will update classes as the functionality is introduced since the static casting is not called unless the class supports syncing. Change-Id: I157c76ae520c1c9e49d46e22f063b7738bbec707 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Remove the Aspect ThreadPaul Lemire2019-08-074-35/+17
| | | | | | | | | | | | | | | | | | This now makes the Qt3D simulation loop run in the Main Thread. In theory having the Aspect Thread allowed Qt3D to continue rendering even if the main thread got locked. In practice however this leads to a large amount of complexities in the Qt3D implementations and provides little value as in most cases blocking the main thread would block animations driven by frontend nodes. Removing the Aspect Thread will allow to remove the backend tree copies each aspect had to make which will allow to reduce memory. In addition, getting direct access to frontend nodes, will now be possible without introducing races which should allow to make more optimizations and reduce latencies on some operations. Change-Id: I80e4cd6427de06ddedfa1bb50d40710b91867b24 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Switch export macros to standard formKai Koehne2019-04-022-2/+2
| | | | | | | | | | | | Qt expects the export macros to have Q_ prefixes, otherwise the symbol versioning script won't find them and mark them. Also remove non-exising QT3DLOGIC_PRIVATE_EXPORT macro from src/doc/qt3d.qdocconf Task-number: QTBUG-74752 Change-Id: I71b9e85ff09c002fb283824aa51a5a8f50e937f4 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Merge branch '5.10' into devSean Harmer2018-01-175-53/+37
|\ | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I248aa369ba98659a61e563fd29cc811c76ea1e2d
| * Iterate by const reference on handlesMike Krus2018-01-133-5/+5
| | | | | | | | | | | | | | | | When iterating on handles, use const references to avoid copy of non trivial type. Found by Clazy clazy-range-loop Change-Id: I33ec54b3958160da2517e196411bcf92cd7b3bff Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * Get rid of the INDEXBITS template argument for QHandleLars Knoll2017-12-132-48/+32
| | | | | | | | | | | | | | | | | | It's not required anymore, as the resource manager can grow as needed. Change-Id: If509de7f2ef90e1af9729d8fc60d7ecb08ede687 Reviewed-by: Svenn-Arne Dragly <svenn-arne.dragly@qt.io> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Replace Q_DECL_FINAL with finalKevin Funk2017-09-2520-37/+37
| | | | | | | | | | Change-Id: Ia80d1cb9cc96d76f8b367caa725c59a70ae0a4d5 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Replace Q_DECL_OVERRIDE with overrideKevin Funk2017-09-2522-53/+53
|/ | | | | Change-Id: I92c955068e233c50043ad7d06a32300dd386c24d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Get rid of the AllocationPolicy template argument in the ResourceManagerLars Knoll2017-09-111-32/+16
| | | | | | | We always use the same policy anyway. Change-Id: I3349b8c19ce0e6239b140dfac7ba66f8dda1b9be Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Use QSharedPointer::create() moreMarc Mutz2017-07-222-3/+3
| | | | | | | | | | This is the result of running the (experimental) clang-tidy check qt-modernize-qsharedpointer-create Discarded changes: none. Change-Id: Ic6368521ebf5841267ffe7917cc652627f7b26a7 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Normalize Q_ARG to avoid temporary memory allocationsSergio Martins2017-06-031-1/+1
| | | | | | | Found by -Wclazy-connect-not-normalized Change-Id: I774424bb53c0d24bd49d5fafdfb8f02e9f05ee16 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Fix container detachments detected by clazySergio Martins2017-05-261-1/+2
| | | | | Change-Id: I551073c386247215f1c51dce92e5f05b5d335cc0 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Fix build for -no-feature-wheeleventStephan Binner2017-04-279-8/+46
| | | | | | | Change-Id: I72591f43c0e2c4cc6e3e589f8d8e52fbb1041666 Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com> Reviewed-by: Tasuku Suzuki <tasuku.suzuki@qt.io> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Coding convention fix for Src/inputRobert Brock2017-03-1651-114/+170
| | | | | | | | Reordering the header includes to comply with Qt coding conventions Task-number: QTBUG-56185 Change-Id: I1d1b61c2fac42505f85a1c4421e1292259270568 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>