From 0cb56973895be971736a5d612090aeeb0cd96f8f Mon Sep 17 00:00:00 2001 From: Patrik Dufresne Date: Fri, 22 Mar 2024 14:09:38 -0400 Subject: [PATCH] Fix Enabling/Disabling MDTextField (#1651) (#1652) --- kivymd/tests/list/test_disable.py | 78 +++++++++++++++++++++++++++++++ kivymd/uix/list/list.kv | 1 + 2 files changed, 79 insertions(+) create mode 100644 kivymd/tests/list/test_disable.py diff --git a/kivymd/tests/list/test_disable.py b/kivymd/tests/list/test_disable.py new file mode 100644 index 000000000..e956d4189 --- /dev/null +++ b/kivymd/tests/list/test_disable.py @@ -0,0 +1,78 @@ +from kivy.clock import Clock +from kivy.core.clipboard import Clipboard +from kivy.input.providers.mouse import MouseMotionEvent +from kivy.lang.builder import Builder + +from kivymd.app import MDApp + +KV = """ +MDScreen: + + MDBoxLayout: + orientation: 'vertical' + + MDListItem: + id: item1 + + MDListItemLeadingIcon: + icon: "account" + + MDListItemHeadlineText: + text: "Headline1" + + MDListItemSupportingText: + text: "Supporting text" + + MDListItemTertiaryText: + text: "Tertiary text" + + MDListItemTrailingCheckbox: + + MDListItem: + id: item2 + + MDListItemHeadlineText: + text: "Headline2" + + MDListItemSupportingText: + text: "Supporting text" + + MDListItemTertiaryText: + text: "Tertiary text" + + MDListItem: + id: item3 + + MDListItemHeadlineText: + text: "Headline3" + + MDListItem: + id: item4 + +""" + + +class TestDisableList(MDApp): + def build(self): + return Builder.load_string(KV) + + def on_start(self): + def _enabled(*args): + self.root.ids.item1.disabled = False + self.root.ids.item2.disabled = False + self.root.ids.item3.disabled = False + self.root.ids.item4.disabled = False + self.stop() + + def _disable(*args): + self.root.ids.item1.disabled = True + self.root.ids.item2.disabled = True + self.root.ids.item3.disabled = True + self.root.ids.item4.disabled = True + Clock.schedule_once(_enabled, 1) + + super().on_start() + Clock.schedule_once(_disable, 1) + + +TestDisableList().run() diff --git a/kivymd/uix/list/list.kv b/kivymd/uix/list/list.kv index f8f6f47af..2682a454a 100644 --- a/kivymd/uix/list/list.kv +++ b/kivymd/uix/list/list.kv @@ -49,6 +49,7 @@ } \ [len(text_container.children)] on_disabled: + if leading_container.children: \ leading_container.children[0].disabled = args[1]