I had this error:
[UIFocus] Failed to update focus with context <UIFocusUpdateContext: 0x6000008857c0: previouslyFocusedItem=(null), nextFocusedItem=(null), focusHeading=None>. No additional info available.
[UIFocus] Deferring focus update to item <TableViewCell: 0x7fb3da047000>. No additional info available.
in a table view which is continuously updated. Konsole/log was spammed with the error message.
Adding the following code to the table view made most of the log entries go away:
if #available(macCatalyst 15.0, *) {
tableView.allowsFocus = false
}
You could also try
func tableView(_ tableView: UITableView, canFocusRowAt indexPath: IndexPath) -> Bool {
return false
}
or
override func shouldUpdateFocus(in context: UIFocusUpdateContext) -> Bool {
return false
}
Then, adding -UIFocusLoggingEnabled YES to the app's start arguments could help understanding what's going on, see https://developer.apple.com/documentation/uikit/focus-based_navigation/debugging_focus_issues_in_your_app
The whole topic appears to be related to
https://developer.apple.com/videos/play/wwdc2021/10260 (tag: wwdc21-10260) and/or iOS 15.