From bc3a9a1c0d1581df813a9df3ba665f3ab40e5a63 Mon Sep 17 00:00:00 2001 From: Chris McCormick Date: Wed, 7 Jan 2026 10:34:23 +0800 Subject: [PATCH] Project list in the top right. --- TODO.md | 3 +- index.html | 120 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 122 insertions(+), 1 deletion(-) diff --git a/TODO.md b/TODO.md index 158bfa5..fd7077e 100644 --- a/TODO.md +++ b/TODO.md @@ -9,12 +9,12 @@ ## TODO - [ ] Display sub-lines of the form `key: value` immediately after item -- [ ] Project list pulldown in top right ## Bugs ## Done +- [x] Project list pulldown in top right - [x] Make it a proper PWA with the minimal-pwa technique - [x] Extract and consolidate indent detection functions - [x] Reduce IndexedDB boilerplate with generic DB operation wrapper @@ -40,3 +40,4 @@ - [x] Give each column a max width of 450px and have them stretch to fill the area up to that. - [x] Don't put carriage returns between individual TODO list items. As far as possible try to preserve original formatting, just moving individual lines around without disturbing other lines. - [x] Ability to create a project on the projects select page, including if TODO.md is empty. + diff --git a/index.html b/index.html index 2861399..3c97aac 100644 --- a/index.html +++ b/index.html @@ -154,6 +154,63 @@ position: relative; } + .project-select-container { + position: relative; + } + + .project-select-btn { + padding: 0.4rem 0.8rem; + display: flex; + align-items: center; + gap: 0.5em; + } + + .project-select-dropdown { + position: absolute; + right: 0; + top: 50px; + background: var(--bg); + border: .1rem solid var(--fg); + border-radius: var(--radius); + padding: 0.5em 0; + min-width: 250px; + z-index: 100; + display: none; + } + + .project-select-dropdown.active { + display: block; + } + + .project-select-dropdown-item { + padding: 0.75em 1em; + cursor: pointer; + display: flex; + align-items: center; + gap: 0.75em; + background: transparent; + border: none; + color: var(--fg); + width: 100%; + text-align: left; + font-size: 1rem; + } + + .project-select-dropdown-item:hover { + background: var(--shade); + opacity: 1; + } + + .project-select-dropdown-item.current { + font-weight: bold; + } + + .project-select-divider { + height: 1px; + background: var(--shade); + margin: 0.5em 0; + } + .burger-btn { width: 40px; height: 40px; @@ -884,6 +941,16 @@ chmod 755 kbtd

Project Name

+
+ + +
+