From 20b6174676082ddb1a6d2e6e85c12abc32e283e6 Mon Sep 17 00:00:00 2001
From: Sebastian Krzyszkowiak <dos@dosowisko.net>
Date: Sat, 9 Sep 2023 09:21:57 +0200
Subject: [PATCH] py,st3m: ScrollController: Add set_position and scroll_to
 methods

---
 python_payload/st3m/ui/interactions.py | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/python_payload/st3m/ui/interactions.py b/python_payload/st3m/ui/interactions.py
index 7cd905d38f..4ee09f2236 100644
--- a/python_payload/st3m/ui/interactions.py
+++ b/python_payload/st3m/ui/interactions.py
@@ -50,6 +50,18 @@ class ScrollController(st3m.Responder):
             count = 0
         self._nitems = count
 
+    def set_position(self, position: int) -> None:
+        """
+        Immediately set a position without animating the transition.
+        """
+        self._target_position = self._current_position = position
+
+    def scroll_to(self, position: int) -> None:
+        """
+        Scroll to specified position.
+        """
+        self._target_position = position
+
     def scroll_left(self) -> None:
         """
         Call when the user wants to scroll left by discrete action (eg. button
-- 
GitLab