Mercurial > hg-stable
view mercurial/templates/paper/changeset.tmpl @ 35087:9acc0360ff67
hgweb: move changeset "tags" to a template in map file (paper and coal)
This patch puts all these changeset "tags" into one template shared everywhere
in paper and coal themes. But it should be noted that some of the templates had
different sets of tags, in some cases it was intended, in others - most likely
not.
First, what's up with all these different ways to get changeset's branch. There
are actually 3 ways to do it in hgweb, they can all be seen in this patch;
"branches", "inbranch" and "branch". They are all lists that consist of 1 or 0
items:
- "branches" has ctx.branch() if current changeset is the tip of that branch
- "inbranch" has ctx.branch() if current changeset is _not_ the tip of that
branch and the branch is not "default"
- "branch" aka "changesetbranch" has ctx.branch() if the branch is not
"default"
The majority of cases (7 vs 2 + /graph) in paper theme used only option 3,
which meant that "default" was never displayed. But other parts of the theme
disagreed with this and used option 1 and option 2 together. For example, the
default view (log) displays "default" on the branch tip (can be seen right
about now on m-s.o/repo/hg), but it disappears when you click on the commit.
Also, using option 3 alone meant that there was no way to tell if a changeset
is the tip of its branch or not (it was always assumed that it's not, see how
some css classes change from "branchname" to the correct "branchhead" in tests)
-- so the two different css styles that exist in paper just for this were
underused.
I think this patch improves the situation, even though it changes the old (even
if inconsistent) behavior. The new behavior matches that of gitweb and
monoblue.
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Wed, 15 Nov 2017 23:55:09 +0800 |
parents | cba4461aa0a0 |
children | 1721ce06100a |
line wrap: on
line source
{header} <title>{repo|escape}: {node|short}</title> </head> <body> <div class="container"> <div class="menu"> <div class="logo"> <a href="{logourl}"> <img src="{staticurl|urlescape}{logoimg}" alt="mercurial" /></a> </div> <ul> <li><a href="{url|urlescape}shortlog/{symrev}{sessionvars%urlparameter}">log</a></li> <li><a href="{url|urlescape}graph/{symrev}{sessionvars%urlparameter}">graph</a></li> <li><a href="{url|urlescape}tags{sessionvars%urlparameter}">tags</a></li> <li><a href="{url|urlescape}bookmarks{sessionvars%urlparameter}">bookmarks</a></li> <li><a href="{url|urlescape}branches{sessionvars%urlparameter}">branches</a></li> </ul> <ul> <li class="active">changeset</li> <li><a href="{url|urlescape}raw-rev/{symrev}{sessionvars%urlparameter}">raw</a></li> <li><a href="{url|urlescape}file/{symrev}{sessionvars%urlparameter}">browse</a></li> </ul> <ul> {archives%archiveentry} </ul> <ul> <li><a href="{url|urlescape}help{sessionvars%urlparameter}">help</a></li> </ul> </div> <div class="main"> <h2 class="breadcrumb"><a href="/">Mercurial</a> {pathdef%breadcrumb}</h2> <h3> changeset {rev}:<a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a> {alltags} </h3> {searchform} <div class="description">{desc|strip|escape|websub|nonempty}</div> <table id="changesetEntry"> <tr> <th class="author">author</th> <td class="author">{author|obfuscate}</td> </tr> <tr> <th class="date">date</th> <td class="date age">{date|rfc822date}</td> </tr> <tr> <th class="author">parents</th> <td class="author">{ifeq(count(parent), '2', parent%changesetparentdiff, parent%changesetparent)}</td> </tr> <tr> <th class="author">children</th> <td class="author">{child%changesetchild}</td> </tr> <tr> <th class="files">files</th> <td class="files">{files}</td> </tr> <tr> <th class="diffstat">diffstat</th> <td class="diffstat"> {diffsummary} <a id="diffstatexpand" href="javascript:toggleDiffstat()">[<tt>+</tt>]</a> <div id="diffstatdetails" style="display:none;"> <a href="javascript:toggleDiffstat()">[<tt>-</tt>]</a> <table class="diffstat-table stripes2">{diffstat}</table> </div> </td> </tr> </table> <div class="overflow"> <div class="sourcefirst linewraptoggle">line wrap: <a class="linewraplink" href="javascript:toggleLinewrap()">on</a></div> <div class="sourcefirst"> line diff</div> <div class="stripes2 diffblocks"> {diff} </div> </div> </div> </div> {footer}