vole
Clone
Read only, no credentials:
https://rodent.software/git/vole.git
Write over SSH with a registered key:
git clone ssh://git@0.0.0.0:2222/vole.git
A free and open-source forge that lives in your Git repo.
Make the issue search results a real popover
bb541fdee195938c86d683fd4fde294b52081cd1 · Keenan Nemetz · 10d ago · parent 451332d1
Make the issue search results a real popover The results sat on the page ground with no edge, so the list read as loose text under the search box. They now open as an overlaid panel with a raised background, border and shadow, and an empty field removes the panel instead of leaving a blank one.
server/web/static/vole.css +13−3
| @@ -1395,10 +1395,20 @@ details[open] > summary .tree-chevron { transform: rotate(90deg); } | |||
| 1395 | 1395 | .request-issue form button:hover { color: var(--bad); } | |
| 1396 | 1396 | .request-unlink { display: inline-grid; place-items: center; width: 22px; min-height: 22px; border-radius: var(--radius); } | |
| 1397 | 1397 | .request-unlink:hover { background: var(--bg-hover); text-decoration: none; } | |
| 1398 | .request-issue-search { margin-top: 8px; } | ||
| 1398 | .request-issue-picker { position: relative; margin-top: 8px; } | ||
| 1399 | .thread-side .request-issue-picker form { margin: 0; } | ||
| 1399 | 1400 | .request-issue-search input { width: 100%; font-size: calc(12.65px * var(--font-scale)); } | |
| 1400 | .request-issue-results { margin-top: 6px; } | ||
| 1401 | .request-issue-results p { margin: 0; font-size: calc(12.65px * var(--font-scale)); } | ||
| 1401 | .request-issue-results { position: absolute; top: calc(100% + 4px); left: 0; right: 0; z-index: 40; } | ||
| 1402 | .request-issue-popover { | ||
| 1403 | max-height: 18rem; | ||
| 1404 | overflow-y: auto; | ||
| 1405 | padding: 4px; | ||
| 1406 | border: 1px solid var(--border-strong); | ||
| 1407 | border-radius: var(--radius-lg); | ||
| 1408 | background: var(--bg-raised); | ||
| 1409 | box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4); | ||
| 1410 | } | ||
| 1411 | .request-issue-popover p { margin: 0; padding: 5px 6px; font-size: calc(12.65px * var(--font-scale)); } | ||
| 1402 | 1412 | .request-issue-matches { display: flex; flex-direction: column; gap: 2px; } | |
| 1403 | 1413 | .thread-side .request-issue-match { margin: 0; } | |
| 1404 | 1414 | .request-issue-match button { | |