summaryrefslogtreecommitdiff
path: root/scene/gui/range.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'scene/gui/range.cpp')
-rw-r--r--scene/gui/range.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/scene/gui/range.cpp b/scene/gui/range.cpp
index 09d8664240..8fe33a00fb 100644
--- a/scene/gui/range.cpp
+++ b/scene/gui/range.cpp
@@ -66,10 +66,11 @@ void Range::Shared::emit_changed(const char *p_what) {
}
void Range::set_value(double p_val) {
+ if (shared->step > 0)
+ p_val = Math::round(p_val / shared->step) * shared->step;
- if (_rounded_values) {
+ if (_rounded_values)
p_val = Math::round(p_val);
- }
if (!shared->allow_greater && p_val > shared->max - shared->page)
p_val = shared->max - shared->page;