mirror of https://github.com/kivy/kivy.git
Merge pull request #4028 from zeeMonkeez/fix_slider_max
Fix: Slider.value may exceed Slider.max
This commit is contained in:
commit
80fadb1b3f
|
@ -117,13 +117,14 @@ class Slider(Widget):
|
||||||
|
|
||||||
def set_norm_value(self, value):
|
def set_norm_value(self, value):
|
||||||
vmin = self.min
|
vmin = self.min
|
||||||
|
vmax = self.max
|
||||||
step = self.step
|
step = self.step
|
||||||
val = value * (self.max - vmin) + vmin
|
val = min(value * (vmax - vmin) + vmin, vmax)
|
||||||
if step == 0:
|
if step == 0:
|
||||||
self.value = val
|
self.value = val
|
||||||
else:
|
else:
|
||||||
self.value = min(round((val - vmin) / step) * step + vmin,
|
self.value = min(round((val - vmin) / step) * step + vmin,
|
||||||
self.max)
|
vmax)
|
||||||
value_normalized = AliasProperty(get_norm_value, set_norm_value,
|
value_normalized = AliasProperty(get_norm_value, set_norm_value,
|
||||||
bind=('value', 'min', 'max', 'step'))
|
bind=('value', 'min', 'max', 'step'))
|
||||||
'''Normalized value inside the :attr:`range` (min/max) to 0-1 range::
|
'''Normalized value inside the :attr:`range` (min/max) to 0-1 range::
|
||||||
|
|
Loading…
Reference in New Issue