Mercurial > dwindows
comparison gtk/dw.c @ 93:98cce029a611
Changed handling of menu item click events.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Thu, 25 Apr 2002 02:10:49 +0000 |
parents | 0a085f295e81 |
children | 7c3eef54c98c |
comparison
equal
deleted
inserted
replaced
92:0a085f295e81 | 93:98cce029a611 |
---|---|
56 | 56 |
57 DWTID _dw_thread_list[DW_THREAD_LIMIT]; | 57 DWTID _dw_thread_list[DW_THREAD_LIMIT]; |
58 GdkColor _foreground[DW_THREAD_LIMIT]; | 58 GdkColor _foreground[DW_THREAD_LIMIT]; |
59 GdkColor _background[DW_THREAD_LIMIT]; | 59 GdkColor _background[DW_THREAD_LIMIT]; |
60 | 60 |
61 GtkWidget *last_window = NULL; | 61 GtkWidget *last_window = NULL, *popup = NULL; |
62 | 62 |
63 int _dw_file_active = 0, _dw_ignore_click = 0, _dw_unselecting = 0; | 63 int _dw_file_active = 0, _dw_ignore_click = 0, _dw_unselecting = 0; |
64 pthread_t _dw_thread = (pthread_t)-1; | 64 pthread_t _dw_thread = (pthread_t)-1; |
65 int _dw_mutex_locked[DW_THREAD_LIMIT]; | 65 int _dw_mutex_locked[DW_THREAD_LIMIT]; |
66 /* Use default border size for the default enlightenment theme */ | 66 /* Use default border size for the default enlightenment theme */ |
264 | 264 |
265 if(work) | 265 if(work) |
266 { | 266 { |
267 int (*genericfunc)(HWND, void *) = work->func; | 267 int (*genericfunc)(HWND, void *) = work->func; |
268 | 268 |
269 genericfunc(widget, work->data); | 269 genericfunc(popup ? popup : widget, work->data); |
270 } | 270 } |
271 return TRUE; | 271 return TRUE; |
272 } | 272 } |
273 | 273 |
274 void _activate_event(GtkWidget *widget, gpointer data) | 274 void _activate_event(GtkWidget *widget, gpointer data) |
1747 { | 1747 { |
1748 int _locked_by_me = FALSE; | 1748 int _locked_by_me = FALSE; |
1749 | 1749 |
1750 if(!menu || !*menu) | 1750 if(!menu || !*menu) |
1751 return; | 1751 return; |
1752 | |
1753 popup = parent; | |
1752 | 1754 |
1753 DW_MUTEX_LOCK; | 1755 DW_MUTEX_LOCK; |
1754 gtk_menu_popup(GTK_MENU((*menu)->menu), NULL, NULL, NULL, NULL, x, y); | 1756 gtk_menu_popup(GTK_MENU((*menu)->menu), NULL, NULL, NULL, NULL, x, y); |
1755 free(*menu); | 1757 free(*menu); |
1756 *menu = NULL; | 1758 *menu = NULL; |