@@ -108,6 +108,16 @@ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE(onNativeTouch)(
108
108
jint touch_device_id_in , jint pointer_finger_id_in ,
109
109
jint action , jfloat x , jfloat y , jfloat p );
110
110
111
+ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativePinchStart )(
112
+ JNIEnv * env , jclass jcls );
113
+
114
+ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativePinchUpdate )(
115
+ JNIEnv * env , jclass jcls ,
116
+ jfloat scale );
117
+
118
+ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativePinchEnd )(
119
+ JNIEnv * env , jclass jcls );
120
+
111
121
JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativeMouse )(
112
122
JNIEnv * env , jclass jcls ,
113
123
jint button , jint action , jfloat x , jfloat y , jboolean relative );
@@ -196,6 +206,9 @@ static JNINativeMethod SDLActivity_tab[] = {
196
206
{ "onNativeSoftReturnKey" , "()Z" , SDL_JAVA_INTERFACE (onNativeSoftReturnKey ) },
197
207
{ "onNativeKeyboardFocusLost" , "()V" , SDL_JAVA_INTERFACE (onNativeKeyboardFocusLost ) },
198
208
{ "onNativeTouch" , "(IIIFFF)V" , SDL_JAVA_INTERFACE (onNativeTouch ) },
209
+ { "onNativePinchStart" , "()V" , SDL_JAVA_INTERFACE (onNativePinchStart ) },
210
+ { "onNativePinchUpdate" , "(F)V" , SDL_JAVA_INTERFACE (onNativePinchUpdate ) },
211
+ { "onNativePinchEnd" , "()V" , SDL_JAVA_INTERFACE (onNativePinchEnd ) },
199
212
{ "onNativeMouse" , "(IIFFZ)V" , SDL_JAVA_INTERFACE (onNativeMouse ) },
200
213
{ "onNativeAccel" , "(FFF)V" , SDL_JAVA_INTERFACE (onNativeAccel ) },
201
214
{ "onNativeClipboardChanged" , "()V" , SDL_JAVA_INTERFACE (onNativeClipboardChanged ) },
@@ -1279,6 +1292,43 @@ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE(onNativeTouch)(
1279
1292
SDL_UnlockMutex (Android_ActivityMutex );
1280
1293
}
1281
1294
1295
+ /* Pinch */
1296
+ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativePinchStart )(
1297
+ JNIEnv * env , jclass jcls )
1298
+ {
1299
+ SDL_LockMutex (Android_ActivityMutex );
1300
+
1301
+ if (Android_Window ) {
1302
+ SDL_SendPinch (SDL_EVENT_PINCH_BEGIN , 0 , Android_Window , 0 );
1303
+ }
1304
+
1305
+ SDL_UnlockMutex (Android_ActivityMutex );
1306
+ }
1307
+
1308
+ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativePinchUpdate )(
1309
+ JNIEnv * env , jclass jcls , jfloat scale )
1310
+ {
1311
+ SDL_LockMutex (Android_ActivityMutex );
1312
+
1313
+ if (Android_Window ) {
1314
+ SDL_SendPinch (SDL_EVENT_PINCH_UPDATE , 0 , Android_Window , scale );
1315
+ }
1316
+
1317
+ SDL_UnlockMutex (Android_ActivityMutex );
1318
+ }
1319
+
1320
+ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativePinchEnd )(
1321
+ JNIEnv * env , jclass jcls )
1322
+ {
1323
+ SDL_LockMutex (Android_ActivityMutex );
1324
+
1325
+ if (Android_Window ) {
1326
+ SDL_SendPinch (SDL_EVENT_PINCH_END , 0 , Android_Window , 0 );
1327
+ }
1328
+
1329
+ SDL_UnlockMutex (Android_ActivityMutex );
1330
+ }
1331
+
1282
1332
/* Mouse */
1283
1333
JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativeMouse )(
1284
1334
JNIEnv * env , jclass jcls ,
0 commit comments