diff options
Diffstat (limited to 'uitask_unix.go')
| -rw-r--r-- | uitask_unix.go | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/uitask_unix.go b/uitask_unix.go index 0c0152f..67d815e 100644 --- a/uitask_unix.go +++ b/uitask_unix.go @@ -21,17 +21,18 @@ func ui(initDone chan error) { } initDone <- nil + // thanks to tristan in irc.gimp.net/#gtk + gdk_threads_add_idle(func() bool { + select { + case f := <-uitask: + f() + default: // do not block + } + return true // don't destroy the callback + }) gtk_main() } -func uistep() { - select { - case f := <-uitask: - f() - default: // do not block - } -} - // temporary func MsgBox(string, string, ...interface{}) {} func MsgBoxError(title string, text string, args ...interface{}) {panic(title+"\n"+fmt.Sprintf(text,args...))} |
