diff options
Diffstat (limited to '')
| -rw-r--r-- | cgit.c | 13 | ||||
| -rw-r--r-- | cgit.css | 98 | ||||
| -rw-r--r-- | ui-diff.c | 1 | ||||
| -rw-r--r-- | ui-log.c | 1 | ||||
| -rw-r--r-- | ui-repolist.c | 1 | ||||
| -rw-r--r-- | ui-shared.c | 37 | ||||
| -rw-r--r-- | ui-summary.c | 6 | ||||
| -rw-r--r-- | ui-tree.c | 1 | ||||
| -rw-r--r-- | ui-view.c | 1 | 
9 files changed, 127 insertions, 32 deletions
| @@ -88,11 +88,20 @@ static void cgit_print_repo_page(struct cacheitem *item)  	if (cgit_query_page && !strcmp(cgit_query_page, "log"))  		show_search = 1; +  	cgit_print_docstart(title, item); -	cgit_print_pageheader(title, show_search); + +  	if (!cgit_query_page) { +		cgit_print_pageheader("summary", show_search);  		cgit_print_summary(); -	} else if (!strcmp(cgit_query_page, "log")) { +		cgit_print_docend(); +		return; +	} + +	cgit_print_pageheader(cgit_query_page, show_search); + +	if (!strcmp(cgit_query_page, "log")) {  		cgit_print_log(cgit_query_head, cgit_query_ofs, 100,   			       cgit_query_search);  	} else if (!strcmp(cgit_query_page, "tree")) { @@ -10,7 +10,13 @@ body {  h2 {  	font-size: 120%;  	font-weight: bold; -	margin-bottom: 0.5em; +	margin-bottom: 0.25em; +} + +h3 { +	margin-top: 0em; +	font-size: 100%; +	font-weight: normal;  }  a { @@ -26,51 +32,99 @@ table.list {  	border: none;  	border-collapse: collapse;  } +  table.list tr {  	background: white;  } +  table.list tr:hover {  	background: #eee;  } +  table.list tr.nohover:hover {  	background: white;  } +  table.list th {  	font-weight: normal;  	border-bottom: solid 1px #777;  	padding: 0.1em 0.5em 0.1em 0.5em;  	vertical-align: baseline;  } +  table.list td {  	border: none;  	padding: 0.1em 0.5em 0.1em 0.5em;  } +  img {  	border: none;  } +  table#layout {  	width: 100%; -	border-collapse: collapse; +	border-collapse: separate; +	border-spacing: 0px;  	margin: 0px;  } -td#header { + +td#header, td#logo { +	color: #666;  	background-color: #ddd; -	padding: 0.25em 0.25em 0.25em 0.5em; +	border-bottom: solid 1px #000; +} + +td#header {  	font-size: 150%;  	font-weight: bold; -	border-bottom: solid 1px #aaa; +	padding: 0.2em 0.5em; +	vertical-align: text-bottom; +} + +td#logo { +	text-align: right;  	vertical-align: middle; +	padding-right: 0.5em; +} + +td#crumb, td#search { +	color: #ccc; +	border-top: solid 3px #555; +	background-color: #666; +	border-bottom: solid 1px #333; +	padding: 2px 1em; +} + +td#crumb { +	font-weight: bold; +} + +td#crumb a { +	color: #ccc;  } -td#header img#logo { -	float: right; + +td#crumb a:hover { +	color: #eee;  } -td#header input { -	float: right; -	margin: 0.25em 1em; +td#search { +	text-align: right; +	vertical-align: center; +	padding-right: 0.5em;  } -td#header a { -	color: black; + +td#search form { +	margin: 0px; +	padding: 0px; +} + +td#search input { +	font-size: 9pt; +	padding: 0px; +	width: 10em; +	border: solid 1px #333; +	color: #333; +	background-color: #fff;  }  td#content { @@ -86,18 +140,23 @@ div.error {  	font-weight: bold;  	margin: 1em 2em;  } +  div.ls-blob, div.ls-dir {  	font-family: monospace;  } +  div.ls-dir a {  	font-weight: bold;  } +  th.filesize, td.filesize {  	text-align: right;  } +  td.filesize {  	font-family: monospace;  } +  td.filemode {  	font-family: monospace;  } @@ -116,29 +175,35 @@ table.commit-info {  	border-collapse: collapse;  	margin-top: 1.5em;  } +  table.commit-info th {  	text-align: left;  	font-weight: normal;  	padding: 0.1em 1em 0.1em 0.1em;  } +  table.commit-info td {  	font-weight: normal;  	padding: 0.1em 1em 0.1em 0.1em;  } +  div.commit-subject {  	font-weight: bold;  	font-size: 125%;  	margin: 1.5em 0em 0.5em 0em;  	padding: 0em;  } +  div.commit-msg {  	white-space: pre;  	font-family: monospace;  } +  table.diffstat {  	border-collapse: collapse;  	margin-top: 1.5em;  } +  table.diffstat th {  	font-weight: normal;  	text-align: left; @@ -146,25 +211,30 @@ table.diffstat th {  	padding: 0.1em 1em 0.1em 0.1em;  	font-size: 100%;  } +  table.diffstat td {  	padding: 0.1em 1em 0.1em 0.1em;  	font-size: 100%;  } +  table.diffstat td span.modechange {  	padding-left: 1em;  	color: red;  } +  table.diffstat td.add a {  	color: green;  } +  table.diffstat td.del a {  	color: red;  } +  table.diffstat td.upd a {  	color: blue;  } +  table.diffstat td.summary { -	/* border-top: solid 1px black; */  	color: #888;  	padding-top: 0.5em;  } @@ -191,9 +261,11 @@ table.diff td div.del {  	font-family: courier;  	font-size: 90%;  } +  .left {  	text-align: left;  } +  .right {  	text-align: right;  } @@ -124,7 +124,6 @@ void cgit_print_diff(const char *old_hex, const char *new_hex)  	get_sha1(old_hex, sha1);  	get_sha1(new_hex, sha2); -	html("<h2>diff</h2>\n");  	html("<table class='diff'><tr><td>");  	run_diff(sha1, sha2);  	html("</td></tr></table>"); @@ -54,7 +54,6 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep)  	}  	prepare_revision_walk(&rev); -	html("<h2>Log</h2>");  	html("<table class='list nowrap'>");  	html("<tr class='nohover'><th class='left'>Date</th>"  	     "<th class='left'>Message</th>" diff --git a/ui-repolist.c b/ui-repolist.c index 011ec95..2ce0d6a 100644 --- a/ui-repolist.c +++ b/ui-repolist.c @@ -16,7 +16,6 @@ void cgit_print_repolist(struct cacheitem *item)  	cgit_print_docstart(cgit_root_title, item);  	cgit_print_pageheader(cgit_root_title, 0); -	html("<h2>Repositories</h2>\n");  	html("<table class='list nowrap'>");  	html("<tr class='nohover'>"  	     "<th class='left'>Name</th>" diff --git a/ui-shared.c b/ui-shared.c index 172499c..bca50aa 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -40,6 +40,14 @@ void cgit_print_error(char *msg)  	html("</div>\n");  } +char *cgit_rooturl() +{ +	if (cgit_virtual_root) +		return fmt("%s/", cgit_virtual_root); +	else +		return "./cgit.cgi"; +} +  char *cgit_repourl(const char *reponame)  {  	if (cgit_virtual_root) { @@ -113,10 +121,23 @@ void cgit_print_docend()  void cgit_print_pageheader(char *title, int show_search)  { -	html("<table id='layout'><tr><td id='header'>"); -	htmlf("<a href='%s'>", cgit_logo_link); -	htmlf("<img id='logo' src='%s'/>\n", cgit_logo); -	htmlf("</a>"); +	html("<table id='layout'>"); +	html("<tr><td id='header'>"); +	html(cgit_root_title); +	html("</td><td id='logo'>"); +	html("<a href='"); +	html_attr(cgit_logo_link); +	htmlf("'><img src='%s'/></a>", cgit_logo); +	html("</td></tr>"); +	html("<tr><td id='crumb'>"); +	htmlf("<a href='%s'>root</a>", cgit_rooturl()); +	if (cgit_query_repo) { +		htmlf(" : <a href='%s'>", cgit_repourl(cgit_repo->url)); +		html_txt(cgit_repo->name); +		htmlf("</a> : %s", title); +	} +	html("</td>"); +	html("<td id='search'>");  	if (show_search) {  		html("<form method='get' href='");  		html_attr(cgit_currurl()); @@ -137,12 +158,8 @@ void cgit_print_pageheader(char *title, int show_search)  		html_attr(cgit_query_search);  		html("'/></form>");  	} -	if (cgit_query_repo) -		htmlf("<a href='%s'>", cgit_repourl(cgit_query_repo)); -	html_txt(title); -	if (cgit_query_repo) -		html("</a>"); -	html("</td></tr><tr><td id='content'>"); +	html("</td></tr>"); +	html("<tr><td id='content' colspan='2'>");  }  void cgit_print_snapshot_start(const char *mimetype, const char *filename,  diff --git a/ui-summary.c b/ui-summary.c index ff3ed4d..42f4300 100644 --- a/ui-summary.c +++ b/ui-summary.c @@ -129,8 +129,10 @@ static void cgit_print_tags()  void cgit_print_summary()  {  	html("<h2>"); -	html_txt("Repo summary page"); -	html("</h2>"); +	html(cgit_repo->name); +	html("</h2><h3>"); +	html(cgit_repo->desc); +	html("</h3>");  	html("<table class='list nowrap'>");  	cgit_print_branches();  	html("<tr class='nohover'><td colspan='4'> </td></tr>"); @@ -66,7 +66,6 @@ void cgit_print_tree(const char *hex, char *path)  		return;  	} -	html("<h2>Tree content</h2>\n");  	html_txt(path);  	html("<table class='list'>\n");  	html("<tr class='nohover'>"); @@ -32,7 +32,6 @@ void cgit_print_view(const char *hex)  	}  	buf[size] = '\0'; -	html("<h2>Object content</h2>\n");  	html("<table class='list'>\n");  	htmlf("<tr class='nohover'><th class='left'>%s %s, %li bytes</th></tr>\n", type, hex, size);  	html("<tr><td class='blob'>\n"); | 
