Scroller: preserve original touch valid callback (#37363)

preserve
This commit is contained in:
Shane Smiskol
2026-02-23 20:20:44 -08:00
committed by GitHub
parent 8543afc78a
commit bd3b7a1d87
+5 -1
View File
@@ -141,8 +141,12 @@ class Scroller(Widget):
def add_widget(self, item: Widget) -> None:
self._items.append(item)
# preserve original touch valid callback
original_touch_valid_callback = item._touch_valid_callback
item.set_touch_valid_callback(lambda: self.scroll_panel.is_touch_valid() and self.enabled and self._scrolling_to is None
and not self.moving_items)
and not self.moving_items and (original_touch_valid_callback() if
original_touch_valid_callback else True))
def set_scrolling_enabled(self, enabled: bool | Callable[[], bool]) -> None:
"""Set whether scrolling is enabled (does not affect widget enabled state)."""