Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

vole
Clone

Read only, no credentials:

https://rodent.software/vole.git

Write over SSH with a registered key:

git clone ssh://git@rodent.software:2222/vole.git

A free and open-source forge that lives in your Git repo.

Search every issue, change and comment from the top bar

6c03e6d3243d31a82210cc7bc689ab3e28226b6c · Keenan Nemetz · 10d ago · parent 389317ee

Search every issue, change and comment from the top bar

The top bar's search now opens a command palette instead of a text field.
The dialog asks the same index and visibility rule as /search, so private
repositories stay out, and it answers with a short list plus a link to the
full results. A button that looks like the old input launches it, labelled
with the platform's shortcut; Ctrl K or Cmd K works anywhere.

The bar's contents also line up with the page column now, and Home is marked
current only on the landing page rather than on every repository page.

server/web/page.go +6−4

@@ -54,12 +54,14 @@ type Page struct {
54 54 memo *requestMemo
55 55 }
56 56
57 // pageSection maps a request path to the global destination it belongs to. A
58 // repository page belongs to Repositories: the repository's own tabs carry the
59 // finer context.
57 // pageSection maps a request path to the global destination it belongs to. The
58 // landing page is Home; a repository page belongs to Repositories, which is not
59 // the same place, so the bar does not mark Home current there.
60 60 func pageSection(path string) string {
61 61 switch {
62 case path == "/" || path == "/repos/new" || strings.HasPrefix(path, "/r/"):
62 case path == "/":
63 return "home"
64 case path == "/repos/new" || strings.HasPrefix(path, "/r/"):
63 65 return "repos"
64 66 case strings.HasPrefix(path, "/activity"):
65 67 return "activity"