# HG changeset patch # User Brendan Cully # Date 1161021731 25200 # Node ID 0eba7e76cd0284405f066a637bdd18adbd846049 # Parent 5207cf649abe173239db83cabf68ea8dedddfd77 Convert changenav bar from revisions to hashes (closes issue189) diff -r 5207cf649abe -r 0eba7e76cd02 mercurial/hgweb/hgweb_mod.py --- a/mercurial/hgweb/hgweb_mod.py Mon Oct 16 12:56:41 2006 +0200 +++ b/mercurial/hgweb/hgweb_mod.py Mon Oct 16 11:02:11 2006 -0700 @@ -28,7 +28,7 @@ return "/" return up + "/" -def revnavgen(pos, pagelen, limit): +def revnavgen(pos, pagelen, limit, nodefunc): def seq(factor, limit=None): if limit: yield limit @@ -50,16 +50,16 @@ break last = f if pos + f < limit: - l.append(("+%d" % f, pos + f)) + l.append(("+%d" % f, hex(nodefunc(pos + f).node()))) if pos - f >= 0: - l.insert(0, ("-%d" % f, pos - f)) + l.insert(0, ("-%d" % f, hex(nodefunc(pos - f).node()))) - yield {"label": "(0)", "rev": 0} + yield {"label": "(0)", "node": hex(nodefunc(0).node())} - for label, rev in l: - yield {"label": label, "rev": rev} + for label, node in l: + yield {"label": label, "node": node} - yield {"label": "tip", "rev": "tip"} + yield {"label": "tip", "node": hex(nodefunc('-1').node())} return nav @@ -215,7 +215,7 @@ end = min(count, start + maxchanges) pos = end - 1 - changenav = revnavgen(pos, maxchanges, count) + changenav = revnavgen(pos, maxchanges, count, self.repo.changectx) yield self.t(shortlog and 'shortlog' or 'changelog', changenav=changenav, @@ -338,7 +338,8 @@ for e in l: yield e - nav = revnavgen(pos, pagelen, count) + nodefunc = lambda x: fctx.filectx(fileid=x) + nav = revnavgen(pos, pagelen, count, nodefunc) yield self.t("filelog", file=f, node=hex(fctx.node()), nav=nav, entries=entries) diff -r 5207cf649abe -r 0eba7e76cd02 templates/gitweb/map --- a/templates/gitweb/map Mon Oct 16 12:56:41 2006 +0200 +++ b/templates/gitweb/map Mon Oct 16 11:02:11 2006 -0700 @@ -5,9 +5,9 @@ changelog = changelog.tmpl summary = summary.tmpl error = error.tmpl -naventry = '#label|escape# ' -navshortentry = '#label|escape# ' -filenaventry = '{label|escape} ' +naventry = '{label|escape} ' +navshortentry = '{label|escape} ' +filenaventry = '{label|escape} ' filedifflink = '#file|escape# ' filenodelink = '#file|escape#file | annotate | diff | revisions' fileellipses = '...' diff -r 5207cf649abe -r 0eba7e76cd02 templates/map --- a/templates/map Mon Oct 16 12:56:41 2006 +0200 +++ b/templates/map Mon Oct 16 11:02:11 2006 -0700 @@ -5,9 +5,9 @@ changelog = changelog.tmpl shortlog = shortlog.tmpl shortlogentry = shortlogentry.tmpl -naventry = '#label|escape# ' -navshortentry = '#label|escape# ' -filenaventry = '{label|escape} ' +naventry = '{label|escape} ' +navshortentry = '{label|escape} ' +filenaventry = '{label|escape} ' filedifflink = '#file|escape# ' filenodelink = '#file|escape# ' fileellipses = '...' diff -r 5207cf649abe -r 0eba7e76cd02 templates/old/map --- a/templates/old/map Mon Oct 16 12:56:41 2006 +0200 +++ b/templates/old/map Mon Oct 16 11:02:11 2006 -0700 @@ -5,8 +5,8 @@ changelog = changelog.tmpl shortlog = shortlog.tmpl shortlogentry = shortlogentry.tmpl -naventry = '#label|escape# ' -navshortentry = '#label|escape# ' +naventry = '{label|escape} ' +navshortentry = '{label|escape} ' filedifflink = '#file|escape# ' filenodelink = '#file|escape# ' fileellipses = '...'