in xf/ui/xf.ui.textinput.js [161:189]
var setNewValue = function (newValue) {
var modulo = newValue % step;
var steppedVal = newValue - modulo;
if(modulo > step/2) {
steppedVal += step;
}
newValue = steppedVal;
if((maxValue || maxValue === 0) && newValue > maxValue) {
newValue = maxValue;
}
if((minValue || minValue === 0) && newValue < minValue) {
newValue = minValue;
}
selValue = newValue;
newTextInput.attr({'value':newValue});
if (rangeWrapper) {
rangeWrapper.find('div.xf-input-range-thumb').attr({'title':newValue});
var percValue = (newValue - minValue) * 100 / (maxValue - minValue);
rangeWrapper.find('div.xf-input-range-value').css({'width':'' + percValue + '%'});
}
};