diff options
Diffstat (limited to 'delegate_darwin.go')
| -rw-r--r-- | delegate_darwin.go | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/delegate_darwin.go b/delegate_darwin.go index 27031c3..7d21c3d 100644 --- a/delegate_darwin.go +++ b/delegate_darwin.go @@ -24,11 +24,9 @@ func makeAppDelegate() { } //export appDelegate_windowShouldClose -func appDelegate_windowShouldClose(win C.id) C.BOOL { +func appDelegate_windowShouldClose(win C.id) { sysData := getSysData(win) - b := false // TODO - sysData.close(&b) - return toBOOL(b) + sysData.signal() } //export appDelegate_windowDidResize @@ -44,5 +42,13 @@ func appDelegate_windowDidResize(win C.id) { //export appDelegate_buttonClicked func appDelegate_buttonClicked(button C.id) { sysData := getSysData(button) - sysData.event() + sysData.signal() +} + +//export appDelegate_applicationShouldTerminate +func appDelegate_applicationShouldTerminate() { + // asynchronous so as to return control to the event loop + go func() { + AppQuit <- struct{}{} + }() } |
