diff options
Diffstat (limited to 'drw')
| -rw-r--r-- | drw/x.go | 14 |
1 files changed, 10 insertions, 4 deletions
@@ -2,6 +2,7 @@ package drw // import "hhvn.uk/hbspbar/drw" import ( "os" + "log" "image" "hhvn.uk/hbspbar/config" @@ -22,7 +23,7 @@ type eventwrap struct { } var InitErr error -var Events chan *eventwrap +var XClosed chan bool var xc *xgb.Conn var xu *xgbutil.XUtil @@ -59,12 +60,17 @@ func init() { return } - Events := make(chan *eventwrap) + XClosed = make(chan bool) go func() { for { ev, err := xc.WaitForEvent() - w := eventwrap{ev, err} - Events <- &w + if ev == nil && err == nil { + XClosed <- true + return + } + if err != nil { + log.Printf("X.WaitForEvents: %v\n", err) + } }}() } |