]> granicus.if.org Git - cgit/commitdiff
ui-tree: link to plain view instead of blob view
authorLars Hjemli <hjemli@gmail.com>
Wed, 6 Aug 2008 09:07:13 +0000 (11:07 +0200)
committerLars Hjemli <hjemli@gmail.com>
Wed, 6 Aug 2008 09:21:30 +0000 (11:21 +0200)
The urls for plain view makes it possible to download blobs without knowing
their SHA1, but the function needs to be promoted and the link from tree
view seems like a perfect fit.

PS: Although hidden, the blob view still is nice for direct blob access so
there's no point in removing it.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
ui-shared.c
ui-shared.h
ui-tree.c

index 4408969c4a3a244b98d2d6678fcdff2c93a03a04..a2e0dd2b77c97efa2dbd43df4aed7ef2eae6e2a7 100644 (file)
@@ -243,6 +243,12 @@ void cgit_tree_link(char *name, char *title, char *class, char *head,
        reporevlink("tree", name, title, class, head, rev, path);
 }
 
+void cgit_plain_link(char *name, char *title, char *class, char *head,
+                    char *rev, char *path)
+{
+       reporevlink("plain", name, title, class, head, rev, path);
+}
+
 void cgit_log_link(char *name, char *title, char *class, char *head,
                   char *rev, char *path, int ofs, char *grep, char *pattern)
 {
index 07da4b40577e402095a01813310d93a776fdd344..c5ce056f4e4fce040029ac9e1c43da91b430a15c 100644 (file)
@@ -11,6 +11,8 @@ extern void cgit_index_link(char *name, char *title, char *class,
                            char *pattern, int ofs);
 extern void cgit_tree_link(char *name, char *title, char *class, char *head,
                           char *rev, char *path);
+extern void cgit_plain_link(char *name, char *title, char *class, char *head,
+                           char *rev, char *path);
 extern void cgit_log_link(char *name, char *title, char *class, char *head,
                          char *rev, char *path, int ofs, char *grep,
                          char *pattern);
index 9a837e2a058c28f8b371a73d04e725ec9dab8951..79332fc9eb22cc83bf4a098abcaf32102862b4d1 100644 (file)
--- a/ui-tree.c
+++ b/ui-tree.c
@@ -35,10 +35,10 @@ static void print_object(const unsigned char *sha1, char *path)
                return;
        }
 
-       html(" blob: <a href='");
-       html_attr(cgit_pageurl(ctx.qry.repo, "blob",
-                              fmt("id=%s&path=%s", sha1_to_hex(sha1), path)));
-       htmlf("'>%s</a>",sha1_to_hex(sha1));
+       html(" (");
+       cgit_plain_link("plain", NULL, NULL, ctx.qry.head,
+                       curr_rev, path);
+       htmlf(")<br/>blob: %s", sha1_to_hex(sha1));
 
        html("<table summary='blob content' class='blob'>\n");
        idx = 0;