diff --git a/src/api-impl-jni/graphics/android_graphics_drawable_Drawable.c b/src/api-impl-jni/graphics/android_graphics_drawable_Drawable.c index aacad34d..eed99e0b 100644 --- a/src/api-impl-jni/graphics/android_graphics_drawable_Drawable.c +++ b/src/api-impl-jni/graphics/android_graphics_drawable_Drawable.c @@ -85,3 +85,7 @@ JNIEXPORT jlong JNICALL Java_android_graphics_drawable_Drawable_native_1construc } return _INTPTR(paintable); } + +JNIEXPORT void JNICALL Java_android_graphics_drawable_Drawable_native_1invalidate(JNIEnv *env, jobject this, jlong paintable_ptr) { + gdk_paintable_invalidate_contents(GDK_PAINTABLE(_PTR(paintable_ptr))); +} diff --git a/src/api-impl/android/graphics/drawable/Drawable.java b/src/api-impl/android/graphics/drawable/Drawable.java index 796c496f..6e7f1d6d 100644 --- a/src/api-impl/android/graphics/drawable/Drawable.java +++ b/src/api-impl/android/graphics/drawable/Drawable.java @@ -89,6 +89,8 @@ public class Drawable { } public void invalidateSelf() { + native_invalidate(paintable); + /* this shouldn't ever be needed with Gtk, but let's play it safe for now */ if (this.callback != null) { callback.invalidateDrawable(this); @@ -213,4 +215,5 @@ public class Drawable { protected static native long native_paintable_from_path(String path); protected native long native_constructor(); + protected native void native_invalidate(long paintable); }