| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
PointerDevice.GenericPointer was the enum value in Qt5, but in Qt6 this
changed to PointerDevice.Generic
Pick-to: 6.2 6.5
Change-Id: Ic5e4a5fe5fd91f7478d00e0d2c643b99eaa7ab14
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Many of the inherited docs were inappropriate or insufficiently specific
to PointHandler. Now we have more snippets with more ideas for how it
can be used.
As a drive-by, fix a typo in the docs for
PointerDeviceHandler::acceptedPointerTypes and add a link to the new
PointerDevice page added in e283c05af745210d4a1f6c0aa9c33bf4da23a1e0
Pick-to: 6.2 6.4 6.5 6.5.0
Fixes: QTBUG-74020
Fixes: QTBUG-106878
Change-Id: I028e1577ac5d4ef0b927c94259d6ab25b6028885
Reviewed-by: Doris Verria <doris.verria@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TapHandler must decide on press whether it's interested in tracking a
particular point further, to see if a qualifying tap occurs, and should
only care about those points it decided to track. But if it did not
decide to track it, wantsEventPoint() should never care about the point
movement after press; nor about hovering points either.
The line in QQuickPointerDeviceHandler::wantsPointerEvent() checking
pointingDevice()->pointerType() != Finger was also making touchpad
behavior inconsistent with mouse behavior, which is why this bug
appeared on macOS but not on Linux: QQuickPointerDeviceHandler needs
to care about the incoming event's buttons on all devices except
touchscreens. It's probably been causing other symptoms on touchpads
since a97760a336c597327cb82eebc9f45c793aec32c9.
For the test, a05cbaaae505dba2546c593e22fe2f9047c0de4b restored the
cumulative native gesture scaling as it should be: so if we try to
scale by 1.1 twice in a row, the result is it's scaled by 1.21.
Pick-to: 6.2 6.4 6.5
Fixes: QTBUG-108896
Change-Id: I3da8878648b89cce5d1a48fa02dffaefead2ac90
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Doris Verria <doris.verria@qt.io>
|
|
|
|
|
|
|
| |
Now uses the proper enums and exposes all necessary classes to QML.
Change-Id: I04cc390469c5811ad4683454b460829fa1e86582
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replace the current license disclaimer in files by
a SPDX-License-Identifier.
Files that have to be modified by hand are modified.
License files are organized under LICENSES directory.
Pick-to: 6.4
Task-number: QTBUG-67283
Change-Id: I63563bbeb6f60f89d2c99660400dca7fab78a294
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Including moc files directly into their classes' TU tends to improve
codegen and enables extended compiler warnings, e.g. about unused
private functions or fields.
Pick-to: 6.3 6.2 5.15
Task-number: QTBUG-102948
Change-Id: I695daa12613de3bada67eb69a26a8dce07c4b85e
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the gesture begins, we begin multiplying the target item's scale
by 1.0 at first; it doesn't make sense to start immediately with
the accumulated scale remembered from previous pinch gestures, because
the target item remembers its own scale.
When QQuickPinchHandler::wantsPointerEvent() returns false because
some irrelevant gesture was received (for example a PanNativeGesture),
that's not a good reason to deactivate. Deactivating and re-activating
with each ZoomNativeGesture event results in extreme behavior, because
PinchHandler depends on the BeginNativeGesture and EndNativeGesture
events to reset internal state. Likewise, the fact that the button
state is NoButton is not a good reason for wantsPointerEvent() to
return false.
Added an autotest: the first of its kind that actually simulates the
native gesture events.
Fixes: QTBUG-92064
Pick-to: 5.15 6.0 6.1
Change-Id: I3a9b92d70f99497ee58ad8557d90d521fbe16d41
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove links to modules and examples that are not part of Qt 6.
- Remove links to entities marked as \internal
- Add missing enum value and QML property docs where it's trivial
to do so.
Task-number: QTBUG-88156
Change-Id: I10a1c7bcc5fe0e2354ea69eaf24930362edb7415
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QEventPoint does not have an accessor to get the QPointerEvent that it
came from, because that's inconsistent with the idea that QPointerEvent
instances are temporary, stack-allocated and movable (the pointer would
often be wrong or null, therefore could not be relied upon).
So most functions that worked directly with QQuickEventPoint before
(which fortunately are still private API) now need to receive the
QPointerEvent too, which we choose to pass by pointer. QEventPoint is
always passed by reference (const where possible) to be consistent with
functions in QPointerEvent that take QEventPoint by reference.
QEventPoint::velocity() should be always in scene coordinates now, which
saves us the trouble of transforming it to each item's coordinate system
during delivery, but means that it will need to be done in handlers or
applications sometimes. If we were going to transform it, it would be
important to also store the sceneVelocity separately in QEventPoint
so that the transformation could be done repeatedly for different items.
Task-number: QTBUG-72173
Change-Id: I7ee164d2e6893c4e407fb7d579c75aa32843933a
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
...and generally deal with changes immediately required after adding
QInputDevice and QPointingDevice.
Also fixed a few usages of deprecated accessors that weren't taken
care of in 212c2bffbb041aee0e3c9a7f0551ef151ed2d3ad.
Task-number: QTBUG-46412
Task-number: QTBUG-69433
Task-number: QTBUG-72167
Change-Id: I93a2643162878afa216556f10808fd92e0b20071
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|\
| |
| |
| | |
Change-Id: I73d9e896c05f7d944f3092b51a3a95c7e6e284b8
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Having neither a list of all possible modifiers nor a link to
Qt::KeyboardModifier was inconvenient. Clarify that bitwise OR
results in logical-AND behavior, while having multiple handlers
results in logical-OR behavior, and that a switch statement in JS
allows you do anything you like with modifiers. Fix the manual test
to test the switch statement and deal with the fact that
point.event.modifiers is undefined: TapHandler can use
eventPoint.modifiers, but any DeviceHandler can use point.modifiers.
Fixes: QTBUG-78234
Change-Id: Iba2a03950aa1279ef454cc76fc8de1b2dab14dfb
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/quick/handlers/qquickpointerdevicehandler.cpp
src/quick/scenegraph/qsgdefaultglyphnode.cpp
src/quick/scenegraph/qsgdefaultglyphnode_p.cpp
src/quick/scenegraph/qsgdefaultglyphnode_p_p.h
tests/auto/qml/qjsengine/tst_qjsengine.cpp
Done-With: Jan Arve Sæther <jan-arve.saether@qt.io>
Done-With: Laszlo Agocs <laszlo.agocs@qt.io>
Change-Id: I35749152f8dce44b9af8d52b1283629879010f11
|
|/
|
|
|
|
|
|
|
|
|
|
| |
Reverts what's left of e53510944169ac9f6753e0d14e1b24a24ff7bd9a
(amends 73258eca7ab7e3981d9f4aaa5484020cb67854a0):
MultiPointHandler is not only for touch handling anymore.
DragHandler in particular needs to respect the acceptedButtons property.
Fixes: QTBUG-76875
Fixes: QTBUG-76582
Change-Id: I414e785dd09b297c93e5e9f162be23e4a44eca54
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
* grabPermissions is a flags property, not bool.
* Add a list of the possible grabPermissions values.
* Fix two other places where \qmlproperty enum was used
instead of enumeration.
* acceptedButtons, acceptedDevices, acceptedModifiers and
acceptedPointerTypes are flags properties, not plain int.
Change-Id: I6f49dcc1e1762e913e4989b208380d64899630a6
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Constructors should take QQuickItem* not QObject* to be symmetric
with the parentItem() accessor (and other code) which assumes its type
- Use header initialization everywhere possible
- Reorder variables to minimize padding (somewhat)
- Remove empty destructor bodies (the compiler can write them)
- Remove override and virtual from destructors in accordance with
https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Rh-override
Change-Id: I682a53a803d65e29136bfaec3a5b534e975ecf30
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
At QtCS 2018 we decided to rename Pointer Handlers to Input Handlers
and include the Keys attached property as part of this set (since we
plan to have attached-property pointer handlers too, eventually).
It's no longer a module, it's included in Qt Quick 2.12. We need to
start promoting Input Handlers and reducing the visibility of legacy
stuff like MouseArea and MultiPointTouchArea (in the hope of being
able to deprecate them eventually).
Task-number: QTBUG-66651
Change-Id: I801351ac2531191cbb1faac9318441c67a109af6
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This property must exist in DragHandler, but we're preparing to have
DragHandler inherit from MultiPointHandler. So it's no longer true
that a MultiPointHandler only handles touch events:
if minimumPointCount is set to 1, it can handle the mouse as well.
Change-Id: If6432e22b4382e79820c4d993645cf3de3b83d0c
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
| |
It will be supported C++ API eventually.
Change-Id: Iebb31c8dbba62bb13c6cf93c27df90aa7d2909fe
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
|
| |
This update corrects many qdoc warnings, mostly of the "Can't link to..."
variety, but there were also a few qdoc comments added. As of this update,
the qdoc warning count is 46 in QtDeclarative.
Change-Id: Icf2d34c7ce7010ebfd9b474feacfe8af42f3fd5f
Reviewed-by: Martin Smith <martin.smith@qt.io>
|
|
|
|
|
|
|
| |
also QQuickPointerEvent and QQuickPointerDevice
Change-Id: I8bdb7c26cf6a5775a77dbf748c47c170270c5fff
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
qquickpinchhandler.cpp:138: warning: Missing property type for QQuickPinchHandler::minimumX
qquickpinchhandler.cpp:151: warning: Missing property type for QQuickPinchHandler::maximumX
qquickpinchhandler.cpp:164: warning: Missing property type for QQuickPinchHandler::minimumY
qquickpinchhandler.cpp:177: warning: Missing property type for QQuickPinchHandler::maximumY
qquickpinchhandler.cpp:194: warning: Missing property type for QQuickPinchHandler::minimumTouchPoints
qquickpinchhandler.cpp:198: warning: Missing property type for QQuickPinchHandler::active
qquickpointerdevicehandler.cpp:107: warning: Missing property type for QQuickPointerDeviceHandler::acceptedModifiers
qquickpointerhandler.cpp:47: warning: C++ class QQuickPointerHandler not found: \instantiates QQuickPointerHandler
qquickpointerhandler.cpp:176: warning: Missing property type for QQuickPointerHandler::enabled
qquickpointerhandler.cpp:255: warning: Missing property type for QQuickPointerHandler::parent
qquicktaphandler.cpp:175: warning: Missing property type for longPressThreshold
qquicktaphandler.cpp:235: warning: Missing property type for gesturePolicy
qquicktaphandler.cpp:252: warning: Missing property type for pressed
qquicktaphandler.cpp:329: warning: Missing '\endqml'
qquicktaphandler.cpp:340: warning: Missing property type for tapCount
qquicktaphandler.cpp:353: warning: Missing property type for timeHeld
Change-Id: I8a5bd0ec7c5603573f39f5b5f1f24d5735ba98dd
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
| |
Sometimes you want to require holding down a key in order to enable
some interaction. As with the other "accepted" flags, it's better to
do this with a property than with Javascript.
Change-Id: Ie29880f5f9f496ddca1bee462e2c0e6dd30fa9f5
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
| |
Change-Id: I8cb393986e587e69d550ec03f691258c79d9237a
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
Many handlers are interested only in events which come from specific
devices, device types, or mouse buttons. This provides common
filtering for them.
Change-Id: I30f406ea0c91eb016bc5fb989636787eb680dcbf
Reviewed-by: Jan Arve Sæther <jan-arve.saether@theqtcompany.com>
|