diff options
| author | 2007-10-27 17:47:44 (JST) | |
|---|---|---|
| committer | 2007-10-27 17:53:28 (JST) | |
| commit | ac1f493b6bbc589327e9ba3303f112fcd323c6b6 (patch) | |
| tree | 4729ecc84e0b24b044131546ff39bdd55a6cd9a6 | |
| parent | 7937d06090dd5e19145ec6fa8befc5770954b30c (diff) | |
| download | cgit-ac1f493b6bbc589327e9ba3303f112fcd323c6b6.zip cgit-ac1f493b6bbc589327e9ba3303f112fcd323c6b6.tar.gz | |
Add links to the new refs page from summary page
If either branches or tags are filtered on the summary page, add a link to
refs/heads and/or refs/tags right below the last branch/tag.
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| -rw-r--r-- | cgit.h | 2 | ||||
| -rw-r--r-- | ui-shared.c | 6 | ||||
| -rw-r--r-- | ui-summary.c | 13 |
3 files changed, 21 insertions, 0 deletions
| @@ -236,6 +236,8 @@ extern void cgit_log_link(char *name, char *title, char *class, char *head, | |||
| 236 | char *rev, char *path, int ofs); | 236 | char *rev, char *path, int ofs); |
| 237 | extern void cgit_commit_link(char *name, char *title, char *class, char *head, | 237 | extern void cgit_commit_link(char *name, char *title, char *class, char *head, |
| 238 | char *rev); | 238 | char *rev); |
| 239 | extern void cgit_refs_link(char *name, char *title, char *class, char *head, | ||
| 240 | char *rev, char *path); | ||
| 239 | extern void cgit_snapshot_link(char *name, char *title, char *class, | 241 | extern void cgit_snapshot_link(char *name, char *title, char *class, |
| 240 | char *head, char *rev, char *archivename); | 242 | char *head, char *rev, char *archivename); |
| 241 | extern void cgit_diff_link(char *name, char *title, char *class, char *head, | 243 | extern void cgit_diff_link(char *name, char *title, char *class, char *head, |
diff --git a/ui-shared.c b/ui-shared.c index 5c5bcf3..e4bb98f 100644 --- a/ui-shared.c +++ b/ui-shared.c | |||
| @@ -227,6 +227,12 @@ void cgit_commit_link(char *name, char *title, char *class, char *head, | |||
| 227 | reporevlink("commit", name, title, class, head, rev, NULL); | 227 | reporevlink("commit", name, title, class, head, rev, NULL); |
| 228 | } | 228 | } |
| 229 | 229 | ||
| 230 | void cgit_refs_link(char *name, char *title, char *class, char *head, | ||
| 231 | char *rev, char *path) | ||
| 232 | { | ||
| 233 | reporevlink("refs", name, title, class, head, rev, path); | ||
| 234 | } | ||
| 235 | |||
| 230 | void cgit_snapshot_link(char *name, char *title, char *class, char *head, | 236 | void cgit_snapshot_link(char *name, char *title, char *class, char *head, |
| 231 | char *rev, char *archivename) | 237 | char *rev, char *archivename) |
| 232 | { | 238 | { |
diff --git a/ui-summary.c b/ui-summary.c index 97f1b57..016fea2 100644 --- a/ui-summary.c +++ b/ui-summary.c | |||
| @@ -166,6 +166,13 @@ static int cgit_print_archive_cb(const char *refname, const unsigned char *sha1, | |||
| 166 | return 0; | 166 | return 0; |
| 167 | } | 167 | } |
| 168 | 168 | ||
| 169 | static void print_refs_link(char *path) | ||
| 170 | { | ||
| 171 | html("<tr class='nohover'><td colspan='4'>"); | ||
| 172 | cgit_refs_link("[...]", NULL, NULL, cgit_query_head, NULL, path); | ||
| 173 | html("</td></tr>"); | ||
| 174 | } | ||
| 175 | |||
| 169 | void cgit_print_branches(int maxcount) | 176 | void cgit_print_branches(int maxcount) |
| 170 | { | 177 | { |
| 171 | struct reflist list; | 178 | struct reflist list; |
| @@ -190,6 +197,9 @@ void cgit_print_branches(int maxcount) | |||
| 190 | 197 | ||
| 191 | for(i=0; i<maxcount; i++) | 198 | for(i=0; i<maxcount; i++) |
| 192 | cgit_print_branch(list.refs[i]); | 199 | cgit_print_branch(list.refs[i]); |
| 200 | |||
| 201 | if (maxcount < list.count) | ||
| 202 | print_refs_link("heads"); | ||
| 193 | } | 203 | } |
| 194 | 204 | ||
| 195 | void cgit_print_tags(int maxcount) | 205 | void cgit_print_tags(int maxcount) |
| @@ -211,6 +221,9 @@ void cgit_print_tags(int maxcount) | |||
| 211 | print_tag_header(); | 221 | print_tag_header(); |
| 212 | for(i=0; i<maxcount; i++) | 222 | for(i=0; i<maxcount; i++) |
| 213 | print_tag(list.refs[i]); | 223 | print_tag(list.refs[i]); |
| 224 | |||
| 225 | if (maxcount < list.count) | ||
| 226 | print_refs_link("tags"); | ||
| 214 | } | 227 | } |
| 215 | 228 | ||
| 216 | static void cgit_print_archives() | 229 | static void cgit_print_archives() |
