From 55e21e7b694fa027ad030a4d61e596306288570c Mon Sep 17 00:00:00 2001 From: Paul V Craven Date: Thu, 7 May 2026 15:52:58 -0500 Subject: [PATCH 1/2] Fix caret behavior on input field activation --- arcade/gui/widgets/text.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/arcade/gui/widgets/text.py b/arcade/gui/widgets/text.py index c19e198be1..70709db49e 100644 --- a/arcade/gui/widgets/text.py +++ b/arcade/gui/widgets/text.py @@ -590,7 +590,11 @@ def _on_focus_change(self): def _on_active_changed(self): """Handle the active state change of the input text field to care about loosing active state.""" - if not self._active: + if self._active: + self.trigger_full_render() + self.caret.on_activate() + self.caret.position = len(self.doc.text) + else: self.deactivate() def _apply_style(self): From 81d2f59423fb79c7acbcd9e10039943ecc799c54 Mon Sep 17 00:00:00 2001 From: Maic Siemering Date: Sun, 10 May 2026 22:37:41 +0200 Subject: [PATCH 2/2] gui: use private property to stay consistent --- arcade/gui/widgets/text.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arcade/gui/widgets/text.py b/arcade/gui/widgets/text.py index 70709db49e..03d5a670cd 100644 --- a/arcade/gui/widgets/text.py +++ b/arcade/gui/widgets/text.py @@ -584,7 +584,7 @@ def __init__( def _on_focus_change(self): if self.focused: self.activate() - elif self.active: + elif self._active: self.deactivate() def _on_active_changed(self):