implement android.widget.EditText using GtkEntry

This commit is contained in:
Julian Winkler
2023-08-22 13:55:56 +02:00
parent f9a85017c1
commit 4434de4a58
7 changed files with 299 additions and 2 deletions

View File

@@ -0,0 +1,23 @@
#include <gtk/gtk.h>
#include "../defines.h"
#include "../util.h"
#include "WrapperWidget.h"
#include "../generated_headers/android_widget_EditText.h"
JNIEXPORT jlong JNICALL Java_android_widget_EditText_native_1constructor(JNIEnv *env, jobject this, jobject context, jobject attrs)
{
GtkWidget *wrapper = g_object_ref(wrapper_widget_new());
GtkWidget *entry = gtk_entry_new();
wrapper_widget_set_child(WRAPPER_WIDGET(wrapper), entry);
return _INTPTR(entry);
}
JNIEXPORT jstring JNICALL Java_android_widget_EditText_native_1getText(JNIEnv *env, jobject this, jlong widget_ptr)
{
GtkEntry *entry = GTK_ENTRY(_PTR(widget_ptr));
const char *text = gtk_entry_buffer_get_text(gtk_entry_get_buffer(entry));
return _JSTRING(text);
}