Simplify auto focus code.

Related comments: https://github.com/Textualize/textual/pull/2581\#discussion_r1195595104.
This commit is contained in:
Rodrigo Girão Serrão
2023-05-17 10:01:01 +01:00
parent 4b22234b24
commit 765c7ce037

View File

@@ -669,15 +669,10 @@ class Screen(Generic[ScreenResultType], Widget):
self._refresh_layout(size, full=True)
self.refresh()
if self.AUTO_FOCUS is not None and self.focused is None:
try:
focus_candidates = self.query(self.AUTO_FOCUS)
except NoMatches:
pass
else:
for widget in focus_candidates:
if widget.focusable:
self.set_focus(widget)
break
for widget in self.query(self.AUTO_FOCUS):
if widget.focusable:
self.set_focus(widget)
break
def _on_screen_suspend(self) -> None:
"""Screen has suspended."""