summaryrefslogtreecommitdiffabout
authorLars Hjemli <hjemli@gmail.com>2007-11-03 13:05:12 (UTC)
committer Lars Hjemli <hjemli@gmail.com>2007-11-03 13:05:12 (UTC)
commit601c76eb15a298ac9529f4dded5dd4297b9c3768 (patch) (unidiff)
treecb81350b624cb7ef0cdf9cdd23804cc674b8b5d5
parente36365c6841703e569fcaf20bfc415ee0489c76f (diff)
downloadcgit-601c76eb15a298ac9529f4dded5dd4297b9c3768.zip
cgit-601c76eb15a298ac9529f4dded5dd4297b9c3768.tar.gz
cgit-601c76eb15a298ac9529f4dded5dd4297b9c3768.tar.bz2
Do not require javascript-enabled clients
A simple submit-button is all that's required to make the branch selector drop-down work on any client, so lets add one. Noticed-by: Olivier Ramonat <olivier@ramonat.fr> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--cgit.css12
-rw-r--r--ui-shared.c4
2 files changed, 16 insertions, 0 deletions
diff --git a/cgit.css b/cgit.css
index 1e768b8..1b2e9d6 100644
--- a/cgit.css
+++ b/cgit.css
@@ -113,48 +113,60 @@ div#sidebar div.infobox h1 {
113 font-weight: bold; 113 font-weight: bold;
114 margin: 0px; 114 margin: 0px;
115} 115}
116 116
117div#sidebar div.infobox a.menu { 117div#sidebar div.infobox a.menu {
118 display: block; 118 display: block;
119 background-color: #ccc; 119 background-color: #ccc;
120 padding: 0.1em 0.5em; 120 padding: 0.1em 0.5em;
121 text-decoration: none; 121 text-decoration: none;
122} 122}
123 123
124div#sidebar div.infobox a.menu:hover { 124div#sidebar div.infobox a.menu:hover {
125 background-color: #bbb; 125 background-color: #bbb;
126 text-decoration: none; 126 text-decoration: none;
127} 127}
128 128
129div#sidebar div.infobox select { 129div#sidebar div.infobox select {
130 width: 100%; 130 width: 100%;
131 border: solid 1px #aaa; 131 border: solid 1px #aaa;
132 background-color: #bbb; 132 background-color: #bbb;
133 margin: 2px 0px 0px 0px; 133 margin: 2px 0px 0px 0px;
134 padding: 0px; 134 padding: 0px;
135} 135}
136 136
137td#branch-dropdown-cell {
138 width: 99%;
139}
140
141input#switch-btn {
142 width: 20px;
143 border: solid 1px #aaa;
144 background-color: #bbb;
145 margin: 2px 0px 0px 0px;
146 padding: 0px;
147}
148
137div#sidebar div.infobox input.txt { 149div#sidebar div.infobox input.txt {
138 width: 100%; 150 width: 100%;
139 border: solid 1px #aaa; 151 border: solid 1px #aaa;
140 background-color: #bbb; 152 background-color: #bbb;
141 margin: 2px 0px 0px 0px; 153 margin: 2px 0px 0px 0px;
142 padding: 0; 154 padding: 0;
143} 155}
144 156
145table#grid { 157table#grid {
146 margin: 0px; 158 margin: 0px;
147} 159}
148 160
149td#content { 161td#content {
150 vertical-align: top; 162 vertical-align: top;
151 padding: 1em 2em 1em 1em; 163 padding: 1em 2em 1em 1em;
152 border: none; 164 border: none;
153} 165}
154 166
155div#summary { 167div#summary {
156 vertical-align: top; 168 vertical-align: top;
157 margin-bottom: 1em; 169 margin-bottom: 1em;
158} 170}
159 171
160table#downloads { 172table#downloads {
diff --git a/ui-shared.c b/ui-shared.c
index ca8dd3d..bd34cc3 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -466,51 +466,55 @@ void cgit_print_pageheader(char *title, int show_search)
466 html_txt(strrpart(cgit_repo->name, 20)); 466 html_txt(strrpart(cgit_repo->name, 20));
467 html("</h1>\n"); 467 html("</h1>\n");
468 html_txt(cgit_repo->desc); 468 html_txt(cgit_repo->desc);
469 if (cgit_repo->owner) { 469 if (cgit_repo->owner) {
470 html("<p>\n<h1>owner</h1>\n"); 470 html("<p>\n<h1>owner</h1>\n");
471 html_txt(cgit_repo->owner); 471 html_txt(cgit_repo->owner);
472 } 472 }
473 html("<p>\n<h1>navigate</h1>\n"); 473 html("<p>\n<h1>navigate</h1>\n");
474 reporevlink(NULL, "summary", NULL, "menu", cgit_query_head, 474 reporevlink(NULL, "summary", NULL, "menu", cgit_query_head,
475 NULL, NULL); 475 NULL, NULL);
476 cgit_log_link("log", NULL, "menu", cgit_query_head, NULL, NULL, 476 cgit_log_link("log", NULL, "menu", cgit_query_head, NULL, NULL,
477 0, NULL, NULL); 477 0, NULL, NULL);
478 cgit_tree_link("tree", NULL, "menu", cgit_query_head, 478 cgit_tree_link("tree", NULL, "menu", cgit_query_head,
479 cgit_query_sha1, NULL); 479 cgit_query_sha1, NULL);
480 cgit_commit_link("commit", NULL, "menu", cgit_query_head, 480 cgit_commit_link("commit", NULL, "menu", cgit_query_head,
481 cgit_query_sha1); 481 cgit_query_sha1);
482 cgit_diff_link("diff", NULL, "menu", cgit_query_head, 482 cgit_diff_link("diff", NULL, "menu", cgit_query_head,
483 cgit_query_sha1, cgit_query_sha2, NULL); 483 cgit_query_sha1, cgit_query_sha2, NULL);
484 484
485 for_each_ref(print_archive_ref, &header); 485 for_each_ref(print_archive_ref, &header);
486 486
487 html("<p>\n<h1>branch</h1>\n"); 487 html("<p>\n<h1>branch</h1>\n");
488 html("<form method='get' action=''>\n"); 488 html("<form method='get' action=''>\n");
489 add_hidden_formfields(0, 1, cgit_query_page); 489 add_hidden_formfields(0, 1, cgit_query_page);
490 html("<table class='grid'><tr><td id='branch-dropdown-cell'>");
490 html("<select name='h' onchange='this.form.submit();'>\n"); 491 html("<select name='h' onchange='this.form.submit();'>\n");
491 for_each_branch_ref(print_branch_option, cgit_query_head); 492 for_each_branch_ref(print_branch_option, cgit_query_head);
492 html("</select>\n"); 493 html("</select>\n");
494 html("</td><td>");
495 html("<input type='submit' id='switch-btn' value='..'>\n");
496 html("</td></tr></table>");
493 html("</form>\n"); 497 html("</form>\n");
494 498
495 html("<p>\n<h1>search</h1>\n"); 499 html("<p>\n<h1>search</h1>\n");
496 html("<form method='get' action='"); 500 html("<form method='get' action='");
497 if (cgit_virtual_root) 501 if (cgit_virtual_root)
498 html_attr(cgit_fileurl(cgit_query_repo, "log", 502 html_attr(cgit_fileurl(cgit_query_repo, "log",
499 cgit_query_path, NULL)); 503 cgit_query_path, NULL));
500 html("'>\n"); 504 html("'>\n");
501 add_hidden_formfields(1, 0, "log"); 505 add_hidden_formfields(1, 0, "log");
502 html("<select name='qt'>\n"); 506 html("<select name='qt'>\n");
503 html_option("grep", "log msg", cgit_query_grep); 507 html_option("grep", "log msg", cgit_query_grep);
504 html_option("author", "author", cgit_query_grep); 508 html_option("author", "author", cgit_query_grep);
505 html_option("committer", "committer", cgit_query_grep); 509 html_option("committer", "committer", cgit_query_grep);
506 html("</select>\n"); 510 html("</select>\n");
507 html("<input class='txt' type='text' name='q' value='"); 511 html("<input class='txt' type='text' name='q' value='");
508 html_attr(cgit_query_search); 512 html_attr(cgit_query_search);
509 html("'/>\n"); 513 html("'/>\n");
510 html("</form>\n"); 514 html("</form>\n");
511 } else { 515 } else {
512 if (!cgit_index_info || html_include(cgit_index_info)) 516 if (!cgit_index_info || html_include(cgit_index_info))
513 html(default_info); 517 html(default_info);
514 } 518 }
515 519
516 html("</div>\n"); 520 html("</div>\n");