summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sysdata_darwin.go7
1 files changed, 6 insertions, 1 deletions
diff --git a/sysdata_darwin.go b/sysdata_darwin.go
index 85b6c73..f865c9f 100644
--- a/sysdata_darwin.go
+++ b/sysdata_darwin.go
@@ -463,7 +463,12 @@ func (s *sysData) setProgress(percent int) {
ret := make(chan struct{})
defer close(ret)
uitask <- func() {
- C.objc_msgSend_double(s.id, _setDoubleValue, C.double(percent))
+ if percent == -1 {
+ C.objc_msgSend_bool(s.id, _setIndeterminate, C.BOOL(C.YES))
+ } else {
+ C.objc_msgSend_bool(s.id, _setIndeterminate, C.BOOL(C.NO))
+ C.objc_msgSend_double(s.id, _setDoubleValue, C.double(percent))
+ }
ret <- struct{}{}
}
<-ret