mirror of https://github.com/jetkvm/kvm.git
feat(display.go): move tickers into their own method
This allows them to only be started if necessary. If the user has chosen to keep the display on and not-dimmed all the time, the tickers can't start as their tick value must be a positive integer.
This commit is contained in:
parent
e9f140c735
commit
7d1777985f
55
display.go
55
display.go
|
@ -193,6 +193,42 @@ func watchTsEvents() {
|
|||
}
|
||||
}
|
||||
|
||||
// startBacklightTickers starts the two tickers for dimming and switching off the display
|
||||
// if they're not already set. This is done separately to the init routine as the "never dim"
|
||||
// option has the value set to zero, but time.NewTicker only accept positive values.
|
||||
func startBacklightTickers() {
|
||||
LoadConfig()
|
||||
if dim_ticker == nil && config.DisplayDimAfterSec != 0 {
|
||||
fmt.Printf("display: dim_ticker has started.")
|
||||
dim_ticker = time.NewTicker(time.Duration(config.DisplayDimAfterSec) * time.Second)
|
||||
defer dim_ticker.Stop()
|
||||
|
||||
go func() {
|
||||
for {
|
||||
select {
|
||||
case <-dim_ticker.C:
|
||||
tick_displayDim()
|
||||
}
|
||||
}
|
||||
}()
|
||||
}
|
||||
|
||||
if off_ticker == nil && config.DisplayOffAfterSec != 0 {
|
||||
fmt.Printf("display: off_ticker has started.")
|
||||
off_ticker = time.NewTicker(time.Duration(config.DisplayOffAfterSec) * time.Second)
|
||||
defer off_ticker.Stop()
|
||||
|
||||
go func() {
|
||||
for {
|
||||
select {
|
||||
case <-off_ticker.C:
|
||||
tick_displayOff()
|
||||
}
|
||||
}
|
||||
}()
|
||||
}
|
||||
}
|
||||
|
||||
func init() {
|
||||
go func() {
|
||||
waitCtrlClientConnected()
|
||||
|
@ -205,24 +241,7 @@ func init() {
|
|||
requestDisplayUpdate()
|
||||
}()
|
||||
|
||||
go func() {
|
||||
LoadConfig()
|
||||
// Start display auto-sleeping tickers
|
||||
dim_ticker = time.NewTicker(time.Duration(config.DisplayDimAfterMs) * time.Millisecond)
|
||||
defer dim_ticker.Stop()
|
||||
|
||||
off_ticker = time.NewTicker(time.Duration(config.DisplayOffAfterMs) * time.Millisecond)
|
||||
defer off_ticker.Stop()
|
||||
|
||||
for {
|
||||
select {
|
||||
case <-dim_ticker.C:
|
||||
tick_displayDim()
|
||||
case <-off_ticker.C:
|
||||
tick_displayOff()
|
||||
}
|
||||
}
|
||||
}()
|
||||
startBacklightTickers()
|
||||
|
||||
go watchTsEvents()
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue