changeset 2467:4d1f370bf65e

iOS: Pass in the coordinates and row data on container context event.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Wed, 14 Apr 2021 22:40:46 +0000
parents cfb14192753c
children f5fd34dfb9c7
files ios/dw.m
diffstat 1 files changed, 16 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/ios/dw.m	Wed Apr 14 22:38:41 2021 +0000
+++ b/ios/dw.m	Wed Apr 14 22:40:46 2021 +0000
@@ -471,13 +471,13 @@
             case 10:
             {
                 int (* API containercontextfunc)(HWND, char *, int, int, void *, void *) = (int (* API)(HWND, char *, int, int, void *, void *))handler->signalfunction;
-                char *text = (char *)event;
-                void *user = NULL;
-                LONG x,y;
-
-                dw_pointer_query_pos(&x, &y);
-
-                return containercontextfunc(handler->window, text, (int)x, (int)y, handler->data, user);
+                void **params = (void **)event;
+                char *text = (char *)params[0];
+                void *user = params[1];
+                int x = DW_POINTER_TO_INT(params[2]);
+                int y = DW_POINTER_TO_INT(params[3]);
+
+                return containercontextfunc(handler->window, text, x, y, handler->data, user);
             }
             /* Generic selection changed event for several classes */
             case 11:
@@ -2102,8 +2102,14 @@
 {
     DWWindow *window = (DWWindow *)[self window];
     UIContextMenuConfiguration *config = nil;
-
-    _dw_event_handler(self, (UIEvent *)[self getRowTitle:(int)indexPath.row], 10);
+    void *params[4];
+
+    params[0] = [self getRowTitle:(int)indexPath.row];
+    params[1] = [self getRowData:(int)indexPath.row];
+    params[2] = DW_INT_TO_POINTER((int)point.x);
+    params[3] = DW_INT_TO_POINTER((int)point.y);
+
+    _dw_event_handler(self, (UIEvent *)params, 10);
 
     if(window)
     {
@@ -3645,7 +3651,7 @@
 
         if(font)
             thisheight = (int)[font lineHeight];
-        
+
         /* Spinbuttons need some extra */
         if([handle isMemberOfClass:[DWSpinButton class]])
         {