diff --git a/kivy/uix/slider.py b/kivy/uix/slider.py index e40331ddc..7e9d5b57c 100644 --- a/kivy/uix/slider.py +++ b/kivy/uix/slider.py @@ -154,18 +154,19 @@ class Slider(Widget): return (x, y + padding + nval * (self.height - 2 * padding)) def set_value_pos(self, pos): - x = min(self.right, max(pos[0], self.x)) - y = min(self.top, max(pos[1], self.y)) + padding = self.padding + x = min(self.right - padding, max(pos[0], self.x + padding)) + y = min(self.top - padding, max(pos[1], self.y + padding)) if self.orientation == 'horizontal': if self.width == 0: self.value_normalized = 0 else: - self.value_normalized = (x - self.x) / float(self.width) + self.value_normalized = (x - self.x - padding) / float(self.width - 2 * padding) else: if self.height == 0: self.value_normalized = 0 else: - self.value_normalized = (y - self.y) / float(self.height) + self.value_normalized = (y - self.y - padding) / float(self.height - 2 * padding) value_pos = AliasProperty(get_value_pos, set_value_pos, bind=('x', 'y', 'width', 'height', 'min', 'max', 'value_normalized', 'orientation'))