make android.text.Layout.draw() compatible custom Canvas classes

TextAndroidCanvas is a proxy canvas class which prevents us from
accessing the GtkSnapshot of the real canvas. To solve this problem, we
call Canvas.drawText() for each line.
This commit is contained in:
Julian Winkler
2025-02-19 20:40:37 +01:00
parent 4bb5dfd86e
commit 24f839f556
7 changed files with 44 additions and 4 deletions

View File

@@ -143,6 +143,14 @@ JNIEXPORT jint JNICALL Java_android_text_Layout_native_1get_1ellipsis_1count
JNIEXPORT void JNICALL Java_android_text_Layout_native_1draw
(JNIEnv *, jobject, jlong, jlong, jlong);
/*
* Class: android_text_Layout
* Method: native_draw_custom_canvas
* Signature: (JLandroid/graphics/Canvas;Landroid/graphics/Paint;)V
*/
JNIEXPORT void JNICALL Java_android_text_Layout_native_1draw_1custom_1canvas
(JNIEnv *, jobject, jlong, jobject, jobject);
#ifdef __cplusplus
}
#endif