瀏覽代碼

countdown timer: make digit selection wrap when pressing right

    When pressing right, adds the modulo number to the `selection` variable
    before subtracting and modulo'ing it. This prevents it from being
    assigned a negative value (which cannot be relied upon for an enum),
    as well as making the variable properly wrap around below "zero".

    While not strictly necessary, the code for handling left button presses
    is also changed for consistency.
woob 1 年之前
父節點
當前提交
1012b45ba4
共有 1 個文件被更改,包括 2 次插入4 次删除
  1. 2 4
      views/countdown_view.c

+ 2 - 4
views/countdown_view.c

@@ -304,13 +304,11 @@ static void handle_time_setting_select(InputKey key, CountDownTimView* cdv) {
         break;
 
     case InputKeyRight:
-        selection--;
-        selection = selection % 3;
+        selection = (3 + selection - 1) % 3;
         break;
 
     case InputKeyLeft:
-        selection++;
-        selection = selection % 3;
+        selection = (3 + selection + 1) % 3;
         break;
 
     default: