ui/gtk/text.c

changeset 1065
cb3c1fcecaa0
parent 1063
e0251f6e15f7
--- a/ui/gtk/text.c	Thu Jan 29 19:01:52 2026 +0100
+++ b/ui/gtk/text.c	Thu Jan 29 20:55:59 2026 +0100
@@ -186,6 +186,7 @@
         value->insert = ui_textarea_insert;
         value->setposition = ui_textarea_setposition;
         value->position = ui_textarea_position;
+        value->setselection = ui_textarea_setselection;
         value->selection = ui_textarea_selection;
         value->length = ui_textarea_length;
         value->remove = ui_textarea_remove;
@@ -295,6 +296,15 @@
     return text->pos;
 }
 
+void ui_textarea_setselection(UiText *text, int begin, int end) {
+    GtkTextBuffer *buf = text->data1;
+    GtkTextIter ib;
+    GtkTextIter ie;
+    gtk_text_buffer_get_iter_at_offset(text->data1, &ib, begin);
+    gtk_text_buffer_get_iter_at_offset(text->data1, &ie, end);
+    gtk_text_buffer_select_range(buf, &ib, &ie);
+}
+
 void ui_textarea_selection(UiText *text, int *begin, int *end) {
     GtkTextIter b;
     GtkTextIter e;

mercurial