sapling/mercurial/templates
Anton Shestakov f6e436f317 hgweb: update canvas.width before dynamically redrawing graph (issue2683)
After 313b8d61b548 graph canvas width is decided once on the initial rendering.
However, after graph page gets scrolled down to load more, it might need more
horizontal space to draw, so it needs to resize the canvas dynamically.

The exact problem that this patch solves can be seen using:

    hg init testfork
    cd testfork
    echo 0 > foo
    hg ci -Am0
    echo 1 > foo
    hg ci -m1
    hg up 0
    echo 2 > foo
    hg ci -m2
    hg gl -T '{rev}\n'

    @  2
    |
    | o  1
    |/
    o  0

    hg serve

And then by navigating to http://127.0.0.1:8000/graph/tip?revcount=1

"revcount=1" makes sure the initial graph contains only revision 2. And because
the initial canvas width takes only that one revision into count, after the
(immediate) AJAX update revision 1 will be cut off from the graph.

We can safely set canvas width to the new value we get from the AJAX request
because every time graph is updated, it is completely redrawn using all the
requested nodes (in the case above it will use /graph/2?revcount=61), so the
value is guaranteed not to decrease.

P.S.: Sorry for parsing HTML with regexes, but I didn't start it.
2016-01-23 17:31:31 +08:00
..
atom urls: bulk-change primary website URLs 2015-09-30 15:43:49 -05:00
coal coal: reuse style-paper.css and use a separate css file for visual tweaks 2015-09-18 14:03:32 +08:00
gitweb templates: use canvaswidth instead of fixed width for canvas (issue2683) 2016-01-21 02:42:01 +09:00
json json: implement {fileannotate} template 2015-04-10 22:37:40 -04:00
monoblue templates: use canvaswidth instead of fixed width for canvas (issue2683) 2016-01-21 02:42:01 +09:00
paper templates: use canvaswidth instead of fixed width for canvas (issue2683) 2016-01-21 02:42:01 +09:00
raw hgweb: replace 'shortlog' with 'changelog' in raw changelog template 2013-08-16 21:41:19 +04:00
rss urls: bulk-change primary website URLs 2015-09-30 15:43:49 -05:00
spartan templates: use canvaswidth instead of fixed width for canvas (issue2683) 2016-01-21 02:42:01 +09:00
static hgweb: update canvas.width before dynamically redrawing graph (issue2683) 2016-01-23 17:31:31 +08:00
map-cmdline.bisect map-cmdline.bisect: rewrite to just %include the default template 2015-05-10 13:48:10 -04:00
map-cmdline.changelog setup: install translation files as package data 2009-12-01 16:06:10 +01:00
map-cmdline.compact compact style: show bookmarks in the same manner as tags 2011-04-13 13:06:35 -05:00
map-cmdline.default templates: add a default template style for status 2015-06-10 14:35:05 -05:00
map-cmdline.phases template-phases: extend default style instead of duplicating it 2015-04-25 21:42:07 +09:00
map-cmdline.status templates: fix missing closing brace in map-cmdline.status 2015-06-18 23:08:27 +09:00
map-cmdline.xml templater: add new docheader/footer components for XML (issue4135) 2015-08-26 16:27:14 -05:00