fix wrong eventdata in motif dropdown events

7 days ago

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Sun, 06 Apr 2025 13:54:28 +0200 (7 days ago)
changeset 556
1a95de56dadc
parent 555
0b1bb5687dca
child 557
e6415fd4af4b

fix wrong eventdata in motif dropdown events

ui/motif/list.c file | annotate | diff | comparison | revisions
--- a/ui/motif/list.c	Sun Apr 06 13:53:33 2025 +0200
+++ b/ui/motif/list.c	Sun Apr 06 13:54:28 2025 +0200
@@ -206,18 +206,19 @@
         UiListView *listview,
         XmComboBoxCallbackStruct *cb)
 {
-    UiListSelection sel = { 0, NULL };
-    if(cb->item_position > 0) {
-        sel.count = 1;
-        sel.rows = malloc(sizeof(int));
-        sel.rows[0] = cb->item_position-1;
+    int index = cb->item_position;
+    void *elm = NULL;
+    if(listview->var) {
+        UiList *list = listview->var->value;
+        elm = ui_list_get(list, index);
     }
+    
     UiEvent event;
     event.obj = listview->obj;
     event.window = event.obj->window;
     event.document = event.obj->ctx->document;
-    event.eventdata = &sel;
-    event.intval = 0;
+    event.eventdata = elm;
+    event.intval = index;
     if(listview->onactivate) {
         listview->onactivate(&event, listview->onactivatedata);
     }

mercurial