diff --git a/core/src/widget/operation/focusable.rs b/core/src/widget/operation/focusable.rs index 85b27317..0b86766a 100644 --- a/core/src/widget/operation/focusable.rs +++ b/core/src/widget/operation/focusable.rs @@ -142,6 +142,7 @@ where match self.count.focused { None if self.current == self.count.total - 1 => state.focus(), + Some(0) if self.current == 0 && self.count.total == 1 => {} Some(0) if self.current == 0 => state.unfocus(), Some(0) if self.current == self.count.total - 1 => { state.focus() @@ -184,6 +185,8 @@ where ) { match self.count.focused { None if self.current == 0 => state.focus(), + Some(focused) + if focused == self.current && self.count.total == 1 => {} Some(focused) if focused == self.current => state.unfocus(), Some(focused) if focused + 1 == self.current => state.focus(), Some(focused)