]> git.scottworley.com Git - vopamoi/blobdiff - vopamoi.ts
Dark mode
[vopamoi] / vopamoi.ts
index f37ce2e787559c6b4ce7e6db72b6c68f115f8a87..d5afbecf92a46ee871cf38c74be8deb8468cec5e 100644 (file)
@@ -322,7 +322,7 @@ function BrowserUI() {
     deleted: "Black",
     done: "LawnGreen",
     "someday-maybe": "DeepSkyBlue",
-    todo: "White",
+    todo: "rgb(0 0 0 / 0)",
     waiting: "MediumOrchid",
   };
   var currentTagFilter: TagFilter | null = null;
@@ -692,6 +692,11 @@ function BrowserUI() {
       this.setTagFilter({description: "(untagged)", include: task => task.getElementsByClassName("tag").length === 0});
     },
 
+    toggleDark: function () {
+      document.body.classList.toggle("dark");
+      this.setView(currentViewState);
+    },
+
     undo: function () {
       const ret = ui.undo();
       if (ret && ret instanceof HTMLElement) ret.focus();
@@ -749,7 +754,7 @@ function handleKey(event: any) {
           if (event.key == "G") return browserUI.jumpCursor(inputCount ?? MAX_SAFE_INTEGER);
           if (event.key == "T") return browserUI.makeTopPriority();
           if (event.key == "n") return browserUI.focusTaskNameInput(event);
-          if (event.key == "c") return browserUI.setState("cancelled");
+          if (event.key == "C") return browserUI.setState("cancelled");
           if (event.key == "d") return browserUI.setState("done");
           if (event.key == "q") return browserUI.setState("todo");
           if (event.key == "s") return (inputState = InputState.S);
@@ -772,8 +777,12 @@ function handleKey(event: any) {
     } else if (inputState === InputState.V) {
       inputState = InputState.Root;
       if (event.key == "a") return browserUI.setView("all");
-      if (event.key == "c") return browserUI.setView("cancelled");
+      if (event.key == "C") return browserUI.setView("cancelled");
+      if (event.key == "c") return browserUI.setTagView("comp");
+      if (event.key == "D") return browserUI.toggleDark();
       if (event.key == "d") return browserUI.setView("done");
+      if (event.key == "e") return browserUI.setTagView("errand");
+      if (event.key == "h") return browserUI.setTagView("home");
       if (event.key == "i") return browserUI.setUntaggedView();
       if (event.key == "p") return browserUI.setTagView("Project");
       if (event.key == "q") return browserUI.setView("todo");
@@ -784,6 +793,7 @@ function handleKey(event: any) {
       if (event.key == "v") return browserUI.resetView();
       if (event.key == "w") return browserUI.setView("waiting");
       if (event.key == "x") return browserUI.setView("deleted");
+      if (event.key == "z") return browserUI.setTagView("zombie");
     } else if (inputState === InputState.VS) {
       inputState = InputState.Root;
       if (event.key == "m") return browserUI.setView("someday-maybe");