Warning, /graphics/krita/3rdparty/ext_qt/0013-Emulate-Long-Press-as-Right-Click-on-Android.patch is written in an unsupported language. File is not indexed.

0001 From d2502b1cc175f07b60b9455af4cc779bbaf2fd12 Mon Sep 17 00:00:00 2001
0002 From: Sharaf Zaman <sharafzaz121@gmail.com>
0003 Date: Sat, 12 Sep 2020 10:43:06 +0000
0004 Subject: [PATCH 13/46] Emulate Long Press as Right Click on Android
0005 
0006 ---
0007  src/plugins/platforms/android/androidjniinput.cpp | 13 +++++++++++--
0008  1 file changed, 11 insertions(+), 2 deletions(-)
0009 
0010 diff --git a/src/plugins/platforms/android/androidjniinput.cpp b/src/plugins/platforms/android/androidjniinput.cpp
0011 index 685f40d2ae..b59be80a1b 100644
0012 --- a/src/plugins/platforms/android/androidjniinput.cpp
0013 +++ b/src/plugins/platforms/android/androidjniinput.cpp
0014 @@ -224,13 +224,16 @@ namespace QtAndroidInput
0015              QMetaObject::invokeMethod(inputContext, "longPress", Q_ARG(int, x), Q_ARG(int, y));
0016  
0017          //### TODO: add proper API for Qt 5.2
0018 -        static bool rightMouseFromLongPress = qEnvironmentVariableIntValue("QT_NECESSITAS_COMPATIBILITY_LONG_PRESS");
0019 +        static bool rightMouseFromLongPress = true;
0020          if (!rightMouseFromLongPress)
0021              return;
0022          m_ignoreMouseEvents = true;
0023          QPoint globalPos(x,y);
0024          QWindow *tlw = topLevelWindowAt(globalPos);
0025 -        QPoint localPos = tlw ? (globalPos-tlw->position()) : globalPos;
0026 +        QPoint localPos = globalPos;
0027 +        if (tlw && tlw->handle()) {
0028 +            localPos = tlw->handle()->mapFromGlobal(globalPos);
0029 +        }
0030  
0031          // Release left button
0032          QWindowSystemInterface::handleMouseEvent(tlw,
0033 @@ -243,6 +246,12 @@ namespace QtAndroidInput
0034                                                   localPos,
0035                                                   globalPos,
0036                                                   Qt::MouseButtons(Qt::RightButton));
0037 +
0038 +        // Release right button
0039 +        QWindowSystemInterface::handleMouseEvent(tlw,
0040 +                                                 localPos,
0041 +                                                 globalPos,
0042 +                                                 Qt::MouseButtons(Qt::NoButton));
0043      }
0044  
0045      static void touchBegin(JNIEnv */*env*/, jobject /*thiz*/, jint /*winId*/)
0046 -- 
0047 2.33.0
0048