Fixes #59: keys not controlling processes widget

This commit is contained in:
Sean E. Russell 2020-02-26 15:51:46 -06:00
parent 3641a94ba9
commit 6befa0ef84
2 changed files with 20 additions and 5 deletions

View File

@ -15,11 +15,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [3.4.x] - ??
- Added: metrics. If run with the `--export :2112` flag (`:2112` is a port),
metrics are exposed as Prometheus metrics on that port and can be HTTP
GET-ted.
- Added: a battery gauge as a `power` widget; battery as a bar rather than
### Added
- Device data export via HTTP. If run with the `--export :2112` flag (`:2112`
is a port), metrics are exposed as Prometheus metrics on that port.
- A battery gauge as a `power` widget; battery as a bar rather than
a histogram.
- Temp widget displays degree symbol (merged from BartWillems, thanks
also fleaz)
### Fixed
- Keys not controlling process widget, #59
## [3.3.2] - ??

View File

@ -260,7 +260,6 @@ func countMaxHeight(rs [][]widgetRule) int {
// deepFindProc looks in the UI widget tree for the ProcWidget,
// and returns it if found or nil if not.
func deepFindProc(gs interface{}) *widgets.ProcWidget {
// FIXME: `procs` layout isn't passing down keystrokes
// Recursive function #1. Recursion is OK here because the number
// of UI elements, even in a very complex UI, is going to be
// relatively small.
@ -286,6 +285,15 @@ func deepFindProc(gs interface{}) *widgets.ProcWidget {
}
}
}
fs2, ok := gs.([][]interface{})
if ok {
for _, g := range fs2 {
v := deepFindProc(g)
if v != nil {
return v
}
}
}
p, ok := gs.(*widgets.ProcWidget)
if ok {
return p