Author: Lukas Fleischer <cgit@cryptocrack.de>
Remove no-op link from submodule entries Instead of linking to the current page ("href='#'"), do not add a link to a submodule entry at all if the module-link setting is not used. Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
cgit.css | 2 +- ui-shared.c | 41 ++++++++++++++++++++++++-----------------
diff --git a/cgit.css b/cgit.css index 6888cde733d485d31e416c4c0de7b5e6a5985a62..82c755cfeabe6d3bad303d4e0e1d540ad19956f1 100644 --- a/cgit.css +++ b/cgit.css @@ -254,7 +254,7 @@ font-weight: bold; margin: 1em 2em; } -div#cgit a.ls-blob, div#cgit a.ls-dir, div#cgit a.ls-mod { +div#cgit a.ls-blob, div#cgit a.ls-dir, div#cgit .ls-mod { font-family: monospace; } diff --git a/ui-shared.c b/ui-shared.c index 23a893be1cb6cab351adf596c26aa4f8637d9911..1dd872264504c555bd0b7ee2784301c162eb28fa 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -559,25 +559,32 @@ path[len - 1] = 0; item = lookup_path(list, path); } } - html("<a "); - if (class) - htmlf("class='%s' ", class); - html("href='"); - if (item) { - html_attrf(item->util, rev); - } else if (ctx.repo->module_link) { - dir = strrchr(path, '/'); - if (dir) - dir++; - else - dir = path; - html_attrf(ctx.repo->module_link, dir, rev); + if (item || ctx.repo->module_link) { + html("<a "); + if (class) + htmlf("class='%s' ", class); + html("href='"); + if (item) { + html_attrf(item->util, rev); + } else { + dir = strrchr(path, '/'); + if (dir) + dir++; + else + dir = path; + html_attrf(ctx.repo->module_link, dir, rev); + } + html("'>"); + html_txt(path); + html("</a>"); } else { - html("#"); + html("<span"); + if (class) + htmlf(" class='%s'", class); + html(">"); + html_txt(path); + html("</span>"); } - html("'>"); - html_txt(path); - html("</a>"); html_txtf(" @ %.7s", rev); if (item && tail) path[len - 1] = tail;