@@ -269,26 +269,28 @@ private void updateTimer() {
269269 int valueTo = (int ) binding .sliderOptionsTimerDuration .getValueTo ();
270270 int range = valueTo - valueFrom ;
271271
272- binding .buttonOptionsTimerDecrease .setEnabled (timerDuration >= range );
272+ // Calculate current range
273+ int factor = timerDuration / (range + 1 );
274+ int valueFromNew = factor * (range + 1 );
275+ int valueToNew = valueFromNew + range ;
276+
277+ binding .buttonOptionsTimerDecrease .setEnabled (valueFromNew > 0 );
273278 binding .buttonOptionsTimerDecrease .setOnClickListener (this );
274279 ViewCompat .setTooltipText (
275280 binding .buttonOptionsTimerDecrease ,
276281 activity .getString (R .string .action_decrease )
277282 );
278283
279- binding .buttonOptionsTimerIncrease .setEnabled (timerDuration < Constants .TIMER_MAX );
284+ binding .buttonOptionsTimerIncrease .setEnabled (valueToNew < Constants .TIMER_MAX );
280285 binding .buttonOptionsTimerIncrease .setOnClickListener (this );
281286 ViewCompat .setTooltipText (
282287 binding .buttonOptionsTimerIncrease ,
283288 activity .getString (R .string .action_increase )
284289 );
285290
286- // Calculate current range
287- int factor = timerDuration / (range + 1 );
288- int valueFromNew = factor * (range + 1 );
289291 binding .sliderOptionsTimerDuration .removeOnChangeListener (this );
290292 binding .sliderOptionsTimerDuration .setValueFrom (valueFromNew );
291- binding .sliderOptionsTimerDuration .setValueTo (valueFromNew + range );
293+ binding .sliderOptionsTimerDuration .setValueTo (valueToNew );
292294 binding .sliderOptionsTimerDuration .setValue (timerDuration );
293295 binding .sliderOptionsTimerDuration .addOnChangeListener (this );
294296 binding .sliderOptionsTimerDuration .setLabelFormatter (value -> {
0 commit comments