]> git.scottworley.com Git - vopamoi/commitdiff
Don't change state if it's already in that state
authorScott Worley <scottworley@scottworley.com>
Thu, 27 Jan 2022 03:32:16 +0000 (19:32 -0800)
committerScott Worley <scottworley@scottworley.com>
Thu, 27 Jan 2022 20:21:55 +0000 (12:21 -0800)
vopamoi.ts

index a98a29b938bab1cf735a1d2bf9223a86b38eb6ea..e997d1c38c8572ed5f60dfe7c5828c4bf5979958 100644 (file)
@@ -213,12 +213,14 @@ const BrowserUI = {
     task instanceof HTMLElement && task.focus();
   },
 
     task instanceof HTMLElement && task.focus();
   },
 
-  setState: function (state: string) {
+  setState: function (newState: string) {
     const task = document.activeElement;
     if (!task) return;
     const task = document.activeElement;
     if (!task) return;
+    const oldState = Model.getState(task);
+    if (newState === oldState) return;
     const createTimestamp = task.getAttribute("data-created")!;
     this.moveCursor(1) || this.moveCursor(-1);
     const createTimestamp = task.getAttribute("data-created")!;
     this.moveCursor(1) || this.moveCursor(-1);
-    return UI.setState(createTimestamp, state, Model.getState(task));
+    return UI.setState(createTimestamp, newState, oldState);
   },
 
   undo: function () {
   },
 
   undo: function () {
@@ -240,6 +242,7 @@ function handleKey(event: any) {
     if (event.key == "w") return BrowserUI.setState("waiting");
     if (event.key == "d") return BrowserUI.setState("done");
     if (event.key == "c") return BrowserUI.setState("cancelled");
     if (event.key == "w") return BrowserUI.setState("waiting");
     if (event.key == "d") return BrowserUI.setState("done");
     if (event.key == "c") return BrowserUI.setState("cancelled");
+    if (event.key == "t") return BrowserUI.setState("todo");
     if (event.key == "X") return BrowserUI.setState("deleted");
     if (event.key == "u") return BrowserUI.undo();
   }
     if (event.key == "X") return BrowserUI.setState("deleted");
     if (event.key == "u") return BrowserUI.undo();
   }