When a tree of connections and connection groups within the Guacamole interface is filtered, the filter is supposed to flatten the hierarchy of the tree such that all matching items are visible at the root level. This functionality no longer works for the connection tree within the connection permission editor (part of the user and group edit screens): the hierarchy is not flattened, and only the items which are already at the root level are filtered.
This is a regression due to the changes which introduced a new, tabbed interface for connection permissions ("Current Connections" and "All Connections"):
- The guacGroupListFilter directive had to be modified to filter both GroupListItem (the internal representation of a connection tree node) and ConnectionGroup (the raw REST API representation of a connection group).
- Copypasta within these changes continues to call the flatten function specific to ConnectionGroup when the function specific to GroupListItem should be used.
- This silently breaks flattening when GroupListItem is involved, effectively restricting filtering to only those items which are already at the root level.