aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSoheil Armin <soheil.armin@qt.io>2024-09-05 00:05:10 +0300
committerSoheil Armin <soheil.armin@qt.io>2024-09-10 00:19:01 +0300
commit08f085918ce517199a6e53790a4d3f61fa29b278 (patch)
tree4c5f0f8658acde46e3f16618a9e3ffd65282b8a7
parentd110993b135963fbab22c27b316c12930a2a4d48 (diff)
Android: Indicate signals with no params with QVariant<void*>
Previously we were sending an invalid QVariant if the emitted signal had no parameters. Distinction between an invalid QVariant and a artificial one was not possible in the Android type converter. In this change, we create a QVariant from void* that can be detected as "void" signal during type conversion. Fixes: QTBUG-128586 Pick-to: 6.8 Change-Id: I6371e25399801c8407e729bfa001ce61dd51dfbb Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> Reviewed-by: Petri Virkkunen <petri.virkkunen@qt.io>
-rw-r--r--src/quick/platform/android/qandroidviewsignalmanager.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/quick/platform/android/qandroidviewsignalmanager.cpp b/src/quick/platform/android/qandroidviewsignalmanager.cpp
index 52cecc743a..d8cb5fe3d4 100644
--- a/src/quick/platform/android/qandroidviewsignalmanager.cpp
+++ b/src/quick/platform/android/qandroidviewsignalmanager.cpp
@@ -11,7 +11,8 @@ QT_BEGIN_NAMESPACE
void QAndroidViewSignalManager::forwardSignal()
{
- invokeListener(sender(), senderSignalIndex(), QVariant());
+ // We use VoidStar because creating QVariant from QtMetaType::Void is not possible
+ invokeListener(sender(), senderSignalIndex(), QVariant::fromValue<void *>(nullptr));
}
void QAndroidViewSignalManager::forwardSignal(int signalValue)