From a2381f4721ead48ceb5b8817d281d73cc5ebc947 Mon Sep 17 00:00:00 2001 From: Julian Winkler Date: Sat, 28 Oct 2023 08:04:00 +0200 Subject: [PATCH] fix compiler warnings in WrapperWidget and View --- src/api-impl-jni/views/android_view_View.c | 4 ++-- src/api-impl-jni/widgets/WrapperWidget.c | 5 +++-- src/api-impl-jni/widgets/WrapperWidget.h | 3 +++ 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/api-impl-jni/views/android_view_View.c b/src/api-impl-jni/views/android_view_View.c index 03822813..aef2b288 100644 --- a/src/api-impl-jni/views/android_view_View.c +++ b/src/api-impl-jni/views/android_view_View.c @@ -9,7 +9,7 @@ #define SOURCE_TOUCHSCREEN 0x1002 -struct touch_callback_data { JavaVM *jvm; jobject this; jobject on_touch_listener; jclass on_touch_listener_class; unsigned int num_clicks}; +struct touch_callback_data { JavaVM *jvm; jobject this; jobject on_touch_listener; jclass on_touch_listener_class; unsigned int num_clicks;}; static void call_ontouch_callback(int action, double x, double y, struct touch_callback_data *d) { @@ -253,7 +253,7 @@ JNIEXPORT jlong JNICALL Java_android_view_View_native_1constructor(JNIEnv *env, return _INTPTR(widget); } -JNIEXPORT void JNICALL Java_android_view_View_nativeInvalidate(JNIEnv *env, jclass, jlong widget_ptr) { +JNIEXPORT void JNICALL Java_android_view_View_nativeInvalidate(JNIEnv *env, jclass class, jlong widget_ptr) { GtkWidget *widget = GTK_WIDGET(_PTR(widget_ptr)); gtk_widget_queue_draw(gtk_widget_get_parent(widget)); diff --git a/src/api-impl-jni/widgets/WrapperWidget.c b/src/api-impl-jni/widgets/WrapperWidget.c index 42ed4d2b..ab30087a 100644 --- a/src/api-impl-jni/widgets/WrapperWidget.c +++ b/src/api-impl-jni/widgets/WrapperWidget.c @@ -31,8 +31,9 @@ static void wrapper_widget_dispose(GObject *wrapper_widget) G_OBJECT_CLASS (wrapper_widget_parent_class)->dispose (wrapper_widget); } -void skia_draw_func(SKArea *sk_area, sk_canvas_t *canvas, WrapperWidget *wrapper_widget) +void skia_draw_func(SKArea *sk_area, sk_canvas_t *canvas, void *user_data) { + WrapperWidget *wrapper_widget = WRAPPER_WIDGET(user_data); JNIEnv *env; (*wrapper_widget->jvm)->GetEnv(wrapper_widget->jvm, (void**)&env, JNI_VERSION_1_6); if(wrapper_widget->canvas == NULL) { @@ -128,6 +129,6 @@ void wrapper_widget_set_jobject(WrapperWidget *wrapper, JNIEnv *env, jobject job jmethodID ontouchevent_method = _METHOD(_CLASS(jobj), "onTouchEvent", "(Landroid/view/MotionEvent;)Z"); if (ontouchevent_method != handle_cache.view.onTouchEvent) { /* use gtk_widget_get_first_child since the jobject may not have the "widget" variable set yet */ - _setOnTouchListener(env, jobj, gtk_widget_get_first_child(wrapper), NULL); + _setOnTouchListener(env, jobj, gtk_widget_get_first_child(GTK_WIDGET(wrapper)), NULL); } } diff --git a/src/api-impl-jni/widgets/WrapperWidget.h b/src/api-impl-jni/widgets/WrapperWidget.h index 3d3f1958..f736dcbc 100644 --- a/src/api-impl-jni/widgets/WrapperWidget.h +++ b/src/api-impl-jni/widgets/WrapperWidget.h @@ -2,6 +2,7 @@ #define WRAPPER_WIDGET_H #include +#include G_DECLARE_FINAL_TYPE (WrapperWidget, wrapper_widget, WRAPPER, WIDGET, GtkWidget) @@ -24,4 +25,6 @@ GtkWidget * wrapper_widget_new(void); void wrapper_widget_set_child(WrapperWidget *parent, GtkWidget *child); void wrapper_widget_set_jobject(WrapperWidget *wrapper, JNIEnv *env, jobject jobj); +void _setOnTouchListener(JNIEnv *env, jobject this, GtkWidget *widget, jobject on_touch_listener); + #endif