app/internal/wm: [macOS] close display link after window close

The app.Window owner may run SetAnimating just before window close,
which in turn rely on an active display link. This change makes sure
the link is stopped after window close where no more driver calls
can occur.

Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2021-06-14 23:29:58 +02:00
parent 4c8aa4c3ca
commit 3fc8f55350
+2 -1
View File
@@ -344,10 +344,11 @@ func configFor(scale float32) unit.Metric {
//export gio_onClose
func gio_onClose(view C.CFTypeRef) {
w := mustView(view)
w.displayLink.Close()
w.w.Event(ViewEvent{})
deleteView(view)
w.w.Event(system.DestroyEvent{})
w.displayLink.Close()
w.displayLink = nil
C.CFRelease(w.view)
w.view = 0
C.CFRelease(w.window)