andlabs/libui

possibility: make it unnecessary to pass a function pointer into uiMainSteps()

Open

#147 aberto em 16 de jun. de 2016

Ver no GitHub
 (4 comments) (0 reactions) (0 assignees)C (610 forks)batch import
custom main loopsenhancementhelp wantedquestion

Métricas do repositório

Stars
 (10.632 stars)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

Description

split from #95

Actually looking at the GTK+ source code again, I wonder what would happen if I did this

diff --git a/unix/main.c b/unix/main.c
index bfd0544..0269d86 100644
--- a/unix/main.c
+++ b/unix/main.c
@@ -41,7 +41,8 @@ int uiMainStep(int wait)
    block = FALSE;
    if (wait)
        block = TRUE;
-   return gtk_main_iteration_do(block) == FALSE;
+   gtk_main_iteration_do(block);
+   return 1;
 }

 // gtk_main_quit() may run immediately, or it may wait for other pending events; "it depends" (thanks mclasen in irc.gimp.net/#gtk+)

and ran uiMainStep() without uiMainSteps(). @gnarz? I could also try this myself I guess... but if this does work I could probably just manage the running flag myself like I do on OS X and avoid the need for a function pointer.

Guia do colaborador