X-Git-Url: http://git.scottworley.com/vopamoi/blobdiff_plain/6d01c40696f0612a6352f21320f417ccf528ab40..65a7510df0f96d4168aa33b3b3be9c6f16b2160c:/vopamoi.ts diff --git a/vopamoi.ts b/vopamoi.ts index ba5ae85..7497e54 100644 --- a/vopamoi.ts +++ b/vopamoi.ts @@ -133,21 +133,26 @@ const UI = { }; const BrowserUI = { - addTask: function () { + addTask: function (event: KeyboardEvent) { const input = document.getElementById("taskName"); if (input.value) { const task = UI.addTask(input.value); input.value = ""; + if (event.getModifierState("Control")) { + this.setPriority(task, null, document.getElementsByClassName("task")[0]); + } } }, - destroyTask: function () { - const createTimestamp = document.activeElement?.getAttribute("data-created"); - this.moveCursor(1) || this.moveCursor(-1); - return UI.destroyTask(createTimestamp!); + firstVisibleTask: function () { + for (const task of document.getElementsByClassName("task")) { + if (task instanceof HTMLElement && task.style.display !== "none") { + return task; + } + } }, - focusTaskNameInput: function (event: any) { + focusTaskNameInput: function (event: Event) { document.getElementById("taskName")!.focus(); event.preventDefault(); }, @@ -215,7 +220,7 @@ const BrowserUI = { function handleKey(event: any) { if (event.target.tagName === "INPUT") { - if (event.key == "Enter") return BrowserUI.addTask(); + if (event.key == "Enter") return BrowserUI.addTask(event); } else { if (event.key == "j") return BrowserUI.moveCursor(1); if (event.key == "k") return BrowserUI.moveCursor(-1); @@ -233,4 +238,5 @@ function handleKey(event: any) { function browserInit() { document.body.addEventListener("keydown", handleKey, { capture: false }); log.replay(); + BrowserUI.firstVisibleTask()?.focus(); }