##// END OF EJS Templates
hgweb: adopt child nodes in ajaxScrollInit on /graph pages too...
hgweb: adopt child nodes in ajaxScrollInit on /graph pages too ajaxScrollInit is a function that loads more elements (e.g. changelog entries) when browser window is scrolled down to the bottom of the page. It basically fetches the next page from the server as HTML, finds container element in that document and "adopts" (essentially, moves) all its child nodes to the container in the current document. Currently, hgweb doesn't render any changesets on /graph page (everything is done in JavaScript), so there are no children to adopt. But there will be soon, so let's create a reusable function that does it. Hardcoding #graphnodes selector is suboptimal, but graph code already does this in two other places.

File last commit:

r35202:ec71518a default
r35217:fcc96cf0 default
Show More
style.css
120 lines | 2.7 KiB | text/css | CssLexer
a { text-decoration:none; }
.age { white-space:nowrap; }
.date { white-space:nowrap; }
.indexlinks { white-space:nowrap; }
.parity0 { background-color: #ddd; color: #000; }
.parity1 { background-color: #eee; color: #000; }
.lineno { width: 60px; color: #aaa; font-size: smaller;
text-align: right; }
.plusline { color: green; }
.minusline { color: red; }
.atline { color: purple; }
.annotate { font-size: smaller; text-align: right; padding-right: 1em; }
tr.thisrev a { color:#999999; text-decoration: none; }
tr.thisrev pre { color:#009900; }
td.annotate {
white-space: nowrap;
}
div.annotate-info {
display: none;
position: absolute;
background-color: #FFFFFF;
border: 1px solid #888;
text-align: left;
color: #000000;
padding: 5px;
}
div.annotate-info a { color: #0000FF; }
td.annotate:hover div.annotate-info { display: inline; }
.buttons a {
background-color: #666;
padding: 2pt;
color: white;
font-family: sans-serif;
font-weight: bold;
}
.navigate a {
background-color: #ccc;
padding: 2pt;
font-family: sans-serif;
color: black;
}
.metatag {
background-color: #888;
color: white;
text-align: right;
}
/* Common */
pre { margin: 0; }
.logo {
float: right;
clear: right;
}
/* Changelog/Filelog entries */
.logEntry { width: 100%; }
.logEntry .age { width: 15%; }
.logEntry th.label { width: 16em; }
.logEntry th { font-weight: normal; text-align: right; vertical-align: top; }
.logEntry th.age, .logEntry th.firstline { font-weight: bold; }
.logEntry th.firstline { text-align: left; width: inherit; }
/* Shortlog entries */
.slogEntry { width: 100%; }
.slogEntry .age { width: 8em; }
.slogEntry td { font-weight: normal; text-align: left; vertical-align: top; }
.slogEntry td.author { width: 15em; }
/* Tag entries */
#tagEntries { list-style: none; margin: 0; padding: 0; }
#tagEntries .tagEntry { list-style: none; margin: 0; padding: 0; }
/* Changeset entry */
#changesetEntry { }
#changesetEntry th { font-weight: normal; background-color: #888; color: #fff; text-align: right; }
#changesetEntry th.files, #changesetEntry th.description { vertical-align: top; }
/* File diff view */
#filediffEntry { }
#filediffEntry th { font-weight: normal; background-color: #888; color: #fff; text-align: right; }
/* Graph */
div#wrapper {
position: relative;
margin: 0;
padding: 0;
}
canvas {
position: absolute;
z-index: 5;
top: -0.6em;
margin: 0;
}
ul#nodebgs {
list-style: none inside none;
padding: 0;
margin: 0;
top: -0.7em;
}
ul#graphnodes li, ul#nodebgs li {
height: 39px;
}
ul#graphnodes {
position: absolute;
z-index: 10;
top: -0.85em;
list-style: none inside none;
padding: 0;
}
ul#graphnodes li .info {
display: block;
font-size: 70%;
}