implement View.invalidate()

This commit is contained in:
Julian Winkler
2023-07-13 22:38:01 +02:00
parent def2804a85
commit 520569f7c7
3 changed files with 18 additions and 1 deletions

View File

@@ -205,6 +205,14 @@ JNIEXPORT void JNICALL Java_android_view_View_native_1constructor
JNIEXPORT void JNICALL Java_android_view_View_native_1set_1size_1request
(JNIEnv *, jobject, jint, jint);
/*
* Class: android_view_View
* Method: nativeInvalidate
* Signature: (J)V
*/
JNIEXPORT void JNICALL Java_android_view_View_nativeInvalidate
(JNIEnv *, jclass, jlong);
/*
* Class: android_view_View
* Method: setVisibility

View File

@@ -231,3 +231,9 @@ JNIEXPORT void JNICALL Java_android_view_View_native_1constructor(JNIEnv *env, j
_SET_LONG_FIELD(this, "widget", (long)area);
}
JNIEXPORT void JNICALL Java_android_view_View_nativeInvalidate(JNIEnv *env, jclass, jlong widget_ptr) {
GtkWidget *widget = GTK_WIDGET(_PTR(widget_ptr));
gtk_widget_queue_draw(gtk_widget_get_parent(widget));
}

View File

@@ -802,7 +802,10 @@ public class View extends Object {
public void invalidate(Rect dirty) {}
public void invalidate(int l, int t, int r, int b) {}
public void invalidate() {}
public void invalidate() {
nativeInvalidate(widget);
}
private static native void nativeInvalidate(long widget);
public void setBackgroundColor(int color) {}
public native void setVisibility(int visibility);