diff options
author | Arisotura <thetotalworm@gmail.com> | 2019-06-04 15:53:08 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-06-04 15:53:08 +0200 |
commit | 97f4b5f70b67ea5cc142fbd1f3982c36b915a5d9 (patch) | |
tree | bd3fb3325db3743eef00cf3ddffafdeb644370a9 /src/libui_sdl/libui/unix/main.c | |
parent | f769d6e23f7635910e3f6659c6b55d8c6a8e96ff (diff) | |
parent | 3134c8fc66d1fbd5706930a3e3e64ce118406fe5 (diff) |
Merge branch 'master' into fast-forward-hotkey
Diffstat (limited to 'src/libui_sdl/libui/unix/main.c')
-rw-r--r-- | src/libui_sdl/libui/unix/main.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/libui_sdl/libui/unix/main.c b/src/libui_sdl/libui/unix/main.c index 409b659..516bd76 100644 --- a/src/libui_sdl/libui/unix/main.c +++ b/src/libui_sdl/libui/unix/main.c @@ -5,6 +5,25 @@ uiInitOptions options; // kind of a hack GThread* gtkthread; +GMutex glmutex; + +static void _eventfilter(GdkEvent* evt, gpointer data) +{ + if (evt->type == GDK_EXPOSE) + { + g_mutex_lock(&glmutex); + gtk_main_do_event(evt); + g_mutex_unlock(&glmutex); + return; + } + + gtk_main_do_event(evt); +} + +static void _eventfilterdestroy(gpointer data) +{ + printf("DELET\n"); +} const char *uiInit(uiInitOptions *o) { @@ -21,6 +40,7 @@ const char *uiInit(uiInitOptions *o) loadFutures(); gtkthread = g_thread_self(); + g_mutex_init(&glmutex); GList* iconlist = NULL; iconlist = g_list_append(iconlist, gdk_pixbuf_new_from_resource("/org/kuriboland/melonDS/icon/melon_16x16.png", NULL)); @@ -31,6 +51,10 @@ const char *uiInit(uiInitOptions *o) gtk_window_set_default_icon_list(iconlist); + g_mutex_init(&glmutex); + + gdk_event_handler_set(_eventfilter, NULL, _eventfilterdestroy); + return NULL; } |