Skip to content

Commit 315b742

Browse files
authored
Merge pull request kivy#7774 from kivy/fix_disabled_truthyness
Fix widget.disabled handling of value change of equal truthiness
2 parents 76ab2aa + c7e58ac commit 315b742

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

kivy/tests/test_widget.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,3 +118,10 @@ def test_export_to_png(self):
118118
rmtree(tmp)
119119

120120
self.root.remove_widget(wid)
121+
122+
def test_disabled(self):
123+
from kivy.uix.widget import Widget
124+
w = Widget(disabled=None)
125+
w.disabled = False
126+
w.disabled = True
127+
self.assertEqual(w.disabled, True)

kivy/uix/widget.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1433,6 +1433,9 @@ def get_disabled(self):
14331433
return self._disabled_count > 0
14341434

14351435
def set_disabled(self, value):
1436+
# Necessary to ensure a change between value of equal truthiness
1437+
# doesn't mess up the count
1438+
value = bool(value)
14361439
if value != self._disabled_value:
14371440
self._disabled_value = value
14381441
if value:

0 commit comments

Comments
 (0)