summaryrefslogtreecommitdiffstats
path: root/layout
diff options
context:
space:
mode:
authorSean E. Russell <ser@ser1.net>2020-02-26 15:51:46 -0600
committerSean E. Russell <ser@ser1.net>2020-02-26 15:51:46 -0600
commit6befa0ef84b7796705d474367d5b8667526c89d6 (patch)
treea1b05f55756b80f55135e7ddaddc8167baf8f933 /layout
parent3641a94ba922336e18e11fc7ee28512489a26dac (diff)
Fixes #59: keys not controlling processes widget
Diffstat (limited to 'layout')
-rw-r--r--layout/layout.go10
1 files changed, 9 insertions, 1 deletions
diff --git a/layout/layout.go b/layout/layout.go
index 875bb81..d5380a6 100644
--- a/layout/layout.go
+++ b/layout/layout.go
@@ -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