Mercurial > kallithea
changeset 1866:fdce3f0bbc81 beta
merge with bb
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Mon, 09 Jan 2012 03:48:17 +0200 |
parents | 37b3c3244bbc (diff) c3237c468544 (current diff) |
children | dbcfa1f43316 |
files | rhodecode/templates/changelog/changelog.html rhodecode/templates/changeset/changeset.html |
diffstat | 10 files changed, 234 insertions(+), 178 deletions(-) [+] |
line wrap: on
line diff
--- a/development.ini Sun Jan 08 16:57:56 2012 +0200 +++ b/development.ini Mon Jan 09 03:48:17 2012 +0200 @@ -74,17 +74,17 @@ ## pattern to get the issues from commit messages ## default one used here is #1234 -#url_pat = (?:^#|\s#)(\w+) +url_pat = (?:^#|\s#)(\w+) ## server url to the issue, each {id} will be replaced with id ## fetched from the regex -#issue_server = https://myissueserver.com/issue/{id} +issue_server = https://myissueserver.com/issue/{id} ## prefix to add to link to indicate it's an url ## #314 will be replaced by <issue_prefix><id> -#issue_prefix = # +issue_prefix = # ####################################
--- a/rhodecode/controllers/changelog.py Sun Jan 08 16:57:56 2012 +0200 +++ b/rhodecode/controllers/changelog.py Mon Jan 09 03:48:17 2012 +0200 @@ -37,8 +37,7 @@ from rhodecode.lib.helpers import RepoPage from rhodecode.lib.compat import json -from vcs.exceptions import RepositoryError, ChangesetError, \ -ChangesetDoesNotExistError,BranchDoesNotExistError +from vcs.exceptions import RepositoryError, ChangesetDoesNotExistError log = logging.getLogger(__name__)
--- a/rhodecode/controllers/changeset.py Sun Jan 08 16:57:56 2012 +0200 +++ b/rhodecode/controllers/changeset.py Mon Jan 09 03:48:17 2012 +0200 @@ -93,7 +93,8 @@ params[ctx_key] += [ctx_val] params['anchor'] = fileid - return h.link_to(lbl, h.url.current(**params)) + img = h.image('/images/icons/text_strikethrough.png', lbl, class_='icon') + return h.link_to(img, h.url.current(**params), title=lbl) def get_line_ctx(fid, GET): @@ -143,7 +144,8 @@ lbl = _('%s line context') % ln_ctx params['anchor'] = fileid - return h.link_to(lbl, h.url.current(**params)) + img = h.image('/images/icons/table_add.png', lbl, class_='icon') + return h.link_to(img, h.url.current(**params), title=lbl) class ChangesetController(BaseRepoController):
--- a/rhodecode/lib/helpers.py Sun Jan 08 16:57:56 2012 +0200 +++ b/rhodecode/lib/helpers.py Mon Jan 09 03:48:17 2012 +0200 @@ -758,8 +758,8 @@ def url_func(match_obj): issue_id = match_obj.groups()[0] tmpl = ( - '<a class="%(cls)s" href="%(url)s">' - ' %(issue-prefix)s%(id-repr)s' + ' <a class="%(cls)s" href="%(url)s">' + '%(issue-prefix)s%(id-repr)s' '</a>' ) return tmpl % (
--- a/rhodecode/public/css/style.css Sun Jan 08 16:57:56 2012 +0200 +++ b/rhodecode/public/css/style.css Mon Jan 09 03:48:17 2012 +0200 @@ -1130,7 +1130,27 @@ clear: both; overflow: hidden; margin: 0; - padding: 10px 0; + padding: 5px 0; + white-space: pre-wrap; +} +#content div.box div.expand{ +position:absolute; +width:inherit; +height:14px; +font-size:14px; +text-align:left; +cursor: pointer; +font-family: monospace; +color:#003367; +/* +background:-webkit-gradient(linear,0% 50%,100% 50%,color-stop(0%,rgba(255,255,255,0)),color-stop(100%,rgba(255,255,255,1))); +background:-webkit-linear-gradient(top,rgba(255,255,255,0),rgba(255,255,255,1)); +background:-moz-linear-gradient(top,rgba(255,255,255,0),rgba(255,255,255,1)); +background:-o-linear-gradient(top,rgba(255,255,255,0),rgba(255,255,255,1)); +background:-ms-linear-gradient(top,rgba(255,255,255,0),rgba(255,255,255,1)); +background:linear-gradient(top,rgba(255,255,255,0),rgba(255,255,255,1)); +*/ +display: none; } #content div.box div.message a { @@ -2115,8 +2135,27 @@ padding: 5px !important; } +.tablerow0 { + background-color: #F8F8F8; +} + +.tablerow1 { + background-color: #FFFFFF; +} + +.changeset_id { + font-family: monospace; + color: #666666; +} + +.changeset_hash { + color: #000000; +} + #changeset_content { - border: 1px solid #CCC; + border-left: 1px solid #CCC; + border-right: 1px solid #CCC; + border-bottom: 1px solid #CCC; padding: 5px; } @@ -2126,7 +2165,7 @@ } #changeset_content .container { - min-height: 120px; + min-height: 100px; font-size: 1.2em; overflow: hidden; } @@ -2141,7 +2180,7 @@ #changeset_content .container .right { float: right; - width: 25%; + width: 20%; text-align: right; } @@ -2220,47 +2259,48 @@ } #graph_content { - width: 800px; + width: 80%; float: left; } #graph_content .container_header { - border: 1px solid #CCC; + border-bottom: 1px solid #DDD; padding: 10px; - height: 45px; - -webkit-border-radius: 6px 6px 0px 0px; - -moz-border-radius: 6px 6px 0px 0px; - border-radius: 6px 6px 0px 0px; + height: 25px; } #graph_content #rev_range_container { - padding: 10px 0px; - clear: both; + padding: 7px 20px; + float: left; } #graph_content .container { - border-bottom: 1px solid #CCC; - border-left: 1px solid #CCC; - border-right: 1px solid #CCC; - min-height: 70px; + border-bottom: 1px solid #DDD; + height: 55px; overflow: hidden; - font-size: 1.2em; } #graph_content .container .right { float: right; - width: 28%; + width: 23%; text-align: right; - padding-bottom: 5px; -} +} + +#graph_content .container .left { + float: left; + width: 25%; + padding-left: 5px; +} + +#graph_content .container .mid { + float: left; + width: 49%; +} + #graph_content .container .left .date { - font-weight: 700; - padding-bottom: 5px; -} - -#graph_content .container .left .date span { - vertical-align: text-top; + color: #444444; + padding-left: 22px; } #graph_content .container .left .author { @@ -2270,7 +2310,6 @@ #graph_content .container .left .author .user { color: #444444; float: left; - font-size: 12px; margin-left: -4px; margin-top: 4px; } @@ -2279,6 +2318,11 @@ font-size: 100%; padding-top: 3px; white-space: pre-wrap; + border: 1px solid red; + position: relative; + top: -30px; + left: 40%; + width: 30%; } #graph_content .container .left .message a:hover{ @@ -2290,69 +2334,44 @@ } .right .changes .changed_total { - border: 0px solid #DDD; display: block; float: right; text-align: center; min-width: 45px; cursor: pointer; - background: #FD8; - font-weight: bold; + color: #444444; + background: #FEA; -webkit-border-radius: 0px 0px 0px 6px; -moz-border-radius: 0px 0px 0px 6px; border-radius: 0px 0px 0px 6px; - padding: 2px; + padding: 1px; } .right .changes .added,.changed,.removed { - border: 1px solid #DDD; display: block; + padding: 1px; + color: #444444; float: right; text-align: center; min-width: 15px; - cursor: help; -} - -.right .changes .large { - border: 1px solid #DDD; - display: block; - float: right; - text-align: center; - min-width: 45px; - cursor: help; - background: #54A9F7; } .right .changes .added { - background: #BFB; + background: #CFC; } .right .changes .changed { - background: #FD8; + background: #FEA; } .right .changes .removed { - background: #F88; + background: #FAA; } .right .merge { - vertical-align: top; - font-size: 0.75em; - font-weight: 700; -} - -.right .parent { - font-size: 90%; - font-family: monospace; - padding: 2px 2px 2px 2px; -} -.right .logtags{ - padding: 2px 2px 2px 2px; -} -.right .logtags .branchtag,.logtags .branchtag { - padding: 1px 3px 2px; - background-color: #bfbfbf; - font-size: 9.75px; + padding: 1px 3px 1px 3px; + background-color: #fca062; + font-size: 10px; font-weight: bold; color: #ffffff; text-transform: uppercase; @@ -2360,7 +2379,26 @@ -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; - padding-left:4px; + margin-right: 2px; +} + +.right .parent { + color: #666666; +} +.right .logtags{ + padding: 2px 2px 2px 2px; +} +.right .logtags .branchtag,.logtags .branchtag { + padding: 1px 3px 1px 3px; + background-color: #bfbfbf; + font-size: 10px; + font-weight: bold; + color: #ffffff; + text-transform: uppercase; + white-space: nowrap; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; } .right .logtags .branchtag a:hover,.logtags .branchtag a{ color: #ffffff; @@ -2370,9 +2408,9 @@ color: #ffffff; } .right .logtags .tagtag,.logtags .tagtag { - padding: 1px 3px 2px; + padding: 1px 3px 1px 3px; background-color: #62cffc; - font-size: 9.75px; + font-size: 10px; font-weight: bold; color: #ffffff; text-transform: uppercase; @@ -2526,7 +2564,10 @@ margin-left:1px; } - +.diffblock .diff-actions { + padding: 2px 0px 0px 2px; + float: left; +} .diffblock .diff-menu ul li { padding: 0px 0px 0px 0px !important; } @@ -2965,22 +3006,21 @@ div.gravatar { background-color: #FFF; - border: 0px solid #D0D0D0; float: left; margin-right: 0.7em; - padding: 2px 2px 2px 2px; + padding: 1px 1px 1px 1px; line-height:0; - -webkit-border-radius: 6px; - -khtml-border-radius: 6px; - -moz-border-radius: 6px; - border-radius: 6px; + -webkit-border-radius: 3px; + -khtml-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; } div.gravatar img { - -webkit-border-radius: 4px; - -khtml-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; + -webkit-border-radius: 2px; + -khtml-border-radius: 2px; + -moz-border-radius: 2px; + border-radius: 2px; } #header,#content,#footer { @@ -3447,9 +3487,9 @@ width: 600px; } -#changeset_content .container .left,#graph_content .container .left { +#changeset_content .container .left { float: left; - width: 70%; + width: 75%; padding-left: 5px; } @@ -3685,7 +3725,7 @@ .comments .comment .meta { background: #f8f8f8; - padding: 6px; + padding: 4px; border-bottom: 1px solid #ddd; } @@ -3698,13 +3738,14 @@ } .comments .comment .meta .date { - float: right; } .comments .comment .text { - padding: 8px 6px 6px 14px; background-color: #FAFAFA; } +.comment .text div.rst-block p { + margin: 0.5em 0px !important; +} .comments .comments-number{ padding:0px 0px 10px 0px; @@ -3772,8 +3813,7 @@ } .comment .buttons { - position: absolute; - right:40px; + float: right; } @@ -3860,7 +3900,7 @@ } .inline-comments .comment .meta { background: #f8f8f8; - padding: 6px; + padding: 4px; border-bottom: 1px solid #ddd; } @@ -3873,11 +3913,9 @@ } .inline-comments .comment .meta .date { - float: right; } .inline-comments .comment .text { - padding: 8px 6px 6px 14px; background-color: #FAFAFA; } @@ -3977,6 +4015,7 @@ div.diffblock .code-header .date{ float:left; text-transform: uppercase; + padding: 2px 0px 0px 2px; } div.diffblock .code-header div{ margin-left:4px; @@ -4089,4 +4128,4 @@ cursor: auto !important; background-color: inherit !important; -} \ No newline at end of file +}
--- a/rhodecode/public/js/graph.js Sun Jan 08 16:57:56 2012 +0200 +++ b/rhodecode/public/js/graph.js Mon Jan 09 03:48:17 2012 +0200 @@ -63,18 +63,17 @@ var rela = document.getElementById('graph'); var pad = pad; var scale = 22; - + for (var i in data) { this.scale(scale); + var row = document.getElementById("chg_"+idx); var next = document.getElementById("chg_"+idx+1); + if(row == null){ + continue + } var extra = 0; - //skip this since i don't have DATE in my app - //if (next.is('.changesets-date')) { - // extra = next.outerHeight(); - //} - this.cell[1] += row.clientWidth; this.bg[1] += this.bg_height; @@ -82,7 +81,9 @@ nodeid = cur[0]; node = cur[1]; in_l = cur[2]; - + + var pos_ = 26; + for (var j in in_l) { line = in_l[j]; @@ -99,18 +100,27 @@ } this.setColor(color, 0.0, 0.65); - - y = row.offsetTop-rela.offsetTop; + y = row.offsetTop-rela.offsetTop+pos_; x = pad-((this.cell[0] + this.box_size * start - 1) + this.bg_height-2); this.ctx.lineWidth=this.line_width; this.ctx.beginPath(); this.ctx.moveTo(x, y); - y += row.offsetHeight; - x = pad-((1 + this.box_size * end) + this.bg_height-2); - this.ctx.lineTo(x,y+extra,3); + if (start == end) + { + x = pad-((1 + this.box_size * end) + this.bg_height-2); + y += row.offsetHeight; + this.ctx.lineTo(x,y+extra,3); + } + else + { + var x2 = pad-((1 + this.box_size * end) + this.bg_height-2); + var y2 = y + row.offsetHeight; + var ymid = (y+y2) / 2; + this.ctx.bezierCurveTo(x,ymid,x2,ymid,x2,y2); + } this.ctx.stroke(); } @@ -118,7 +128,7 @@ color = node[1] radius = this.dot_radius; - y = row.offsetTop-rela.offsetTop; + y = row.offsetTop-rela.offsetTop+pos_; x = pad-(Math.round(this.cell[0] * scale/2 * column + radius) + 15 - (column*4)); this.ctx.beginPath();
--- a/rhodecode/templates/changelog/changelog.html Sun Jan 08 16:57:56 2012 +0200 +++ b/rhodecode/templates/changelog/changelog.html Mon Jan 09 03:48:17 2012 +0200 @@ -36,19 +36,19 @@ <div class="info_box" style="float:left"> ${h.submit('set',_('Show'),class_="ui-btn")} ${h.text('size',size=1,value=c.size)} - <span class="rev">${_('revisions')}</span> + ${_('revisions')} </div> ${h.end_form()} + <div id="rev_range_container" style="display:none"></div> <div style="float:right">${h.select('branch_filter',c.branch_name,c.branch_filters)}</div> - <div id="rev_range_container" style="display:none"></div> </div> %for cnt,cs in enumerate(c.pagination): - <div id="chg_${cnt+1}" class="container"> + <div id="chg_${cnt+1}" class="container ${'tablerow%s' % (cnt%2)}"> <div class="left"> - <div class="date"> + <div> ${h.checkbox(cs.short_id,class_="changeset_range")} - <span class="tooltip" title="${cs.date}"><a href="${h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id)}">${cs.revision}:${h.short_id(cs.raw_id)}</a></span> + <span class="tooltip" title="${h.age(cs.date)}"><a href="${h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id)}"><span class="changeset_id">${cs.revision}:<span class="changeset_hash">${h.short_id(cs.raw_id)}</span></span></a></span> </div> <div class="author"> <div class="gravatar"> @@ -56,19 +56,21 @@ </div> <div title="${cs.author}" class="user">${h.person(cs.author)}</div> </div> - <div class="message">${h.urlify_commit(h.wrap_paragraphs(cs.message))}</div> + <div class="date">${cs.date}</div> + </div> + <div class="mid"> + <div class="message">${h.urlify_commit(h.wrap_paragraphs(cs.message))}</div> + <div class="expand ${'tablerow%s' % (cnt%2)}">↓ ${_('show more')} ↓</div> </div> <div class="right"> <div id="${cs.raw_id}_changes_info" class="changes"> <span id="${cs.raw_id}" class="changed_total tooltip" title="${_('Affected number of files, click to show more details')}">${len(cs.affected_files)}</span> </div> - %if len(cs.parents)>1: - <div class="merge">${_('merge')}</div> - %endif - %if cs.parents: + %if cs.parents: %for p_cs in reversed(cs.parents): - <div class="parent">${_('Parent')} ${p_cs.revision}: ${h.link_to(h.short_id(p_cs.raw_id), - h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.raw_id),title=p_cs.message)} + <div class="parent">${_('Parent')} + <span class="changeset_id">${p_cs.revision}:<span class="changeset_hash">${h.link_to(h.short_id(p_cs.raw_id), + h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.raw_id),title=p_cs.message)}</span></span> </div> %endfor %else: @@ -76,6 +78,9 @@ %endif <span class="logtags"> + %if len(cs.parents)>1: + <span class="merge">${_('merge')}</span> + %endif %if cs.branch: <span class="branchtag" title="${'%s %s' % (_('branch'),cs.branch)}"> ${h.link_to(cs.branch,h.url('files_home',repo_name=c.repo_name,revision=cs.raw_id))}</span> @@ -129,6 +134,34 @@ } }); + var msgs = YUQ('.message'); + // get firts element height; + var el = YUQ('.container')[0]; + var row_h = el.clientHeight; + for(var i=0;i<msgs.length;i++){ + var m = msgs[i]; + + var h = m.clientHeight; + var pad = YUD.getStyle(m,'padding'); + if(h > row_h){ + YUD.setStyle(m.nextElementSibling,'display','block'); + YUD.setStyle(m.nextElementSibling,'margin-top',row_h-(h+14)+'px'); + YUD.setAttribute(m.nextElementSibling,'expand',h); + }; + } + YUE.on(YUQ('.expand'),'click',function(e){ + var elem = e.currentTarget.parentElement.parentElement; + YUD.setStyle(e.currentTarget,'display','none'); + YUD.setStyle(elem,'height',YUD.getAttribute(e.currentTarget,'expand')+'px'); + + //redraw the graph max_w and jsdata are global vars + set_canvas(max_w); + + var r = new BranchRenderer(); + r.render(jsdata,max_w); + + }) + // Fetch changeset details YUE.on(YUD.getElementsByClassName('changed_total'),'click',function(e){ var id = e.currentTarget.id @@ -184,4 +217,4 @@ %endif </div> </div> -</%def> \ No newline at end of file +</%def>
--- a/rhodecode/templates/changeset/changeset.html Sun Jan 08 16:57:56 2012 +0200 +++ b/rhodecode/templates/changeset/changeset.html Mon Jan 09 03:48:17 2012 +0200 @@ -27,18 +27,15 @@ <div class="table"> <div class="diffblock"> <div class="code-header"> - <div class="date">${_('commit')} ${c.changeset.revision}:${h.short_id(c.changeset.raw_id)} ${c.changeset.date}</div> - <div class="diff-menu-wrapper"> - <img class="diff-menu-activate" style="cursor: pointer" alt="diff-menu" src="${h.url('/images/icons/script_gear.png')}" /> - <div class="diff-menu" style="display:none"> - <ul> - <li>${h.link_to(_('raw diff'),h.url('raw_changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id,diff='show'))}</li> - <li>${h.link_to(_('download diff'),h.url('raw_changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id,diff='download'))}</li> - <li>${c.ignorews_url()}</li> - <li>${c.context_url()}</li> - </ul> - </div> - </div> + <div class="date"> + R${c.changeset.revision}:${h.link_to(h.short_id(c.changeset.raw_id),h.url('changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id))} + ${c.changeset.date}</div> + <div class="diff-actions"> + <a href="${h.url('raw_changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id,diff='show')}" title="${_('raw diff')}"><img class="icon" src="${h.url('/images/icons/page_white.png')}"/></a> + <a href="${h.url('raw_changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id,diff='download')}" title="${_('download diff')}"><img class="icon" src="${h.url('/images/icons/page_white_get.png')}"/></a> + ${c.ignorews_url()} + ${c.context_url()} + </div> <div class="comments-number" style="float:right;padding-right:5px">${len(c.comments)} comment(s) (${c.inline_cnt} ${_('inline')})</div> </div> </div> @@ -66,22 +63,21 @@ <span class="added" title="${_('affected %s files') % len(c.changeset.affected_files)}">!</span> % endif </div> - %if len(c.changeset.parents)>1: - <div class="merge"> - ${_('merge')}<img alt="merge" src="${h.url('/images/icons/arrow_join.png')}"/> - </div> - %endif %if c.changeset.parents: %for p_cs in reversed(c.changeset.parents): - <div class="parent">${_('Parent')} ${p_cs.revision}: ${h.link_to(h.short_id(p_cs.raw_id), - h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.raw_id),title=p_cs.message)} + <div class="parent">${_('Parent')} + <span class="changeset_id">${p_cs.revision}:<span class="changeset_hash">${h.link_to(h.short_id(p_cs.raw_id), + h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.raw_id),title=p_cs.message)}</span></span> </div> %endfor %else: <div class="parent">${_('No parents')}</div> %endif <span class="logtags"> + %if len(c.changeset.parents)>1: + <span class="merge">${_('merge')}</span> + %endif <span class="branchtag" title="${'%s %s' % (_('branch'),c.changeset.branch)}"> ${h.link_to(c.changeset.branch,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.raw_id))}</span> %for tag in c.changeset.tags: @@ -91,8 +87,8 @@ </span> </div> </div> - <span style="font-size:1.1em;font-weight: bold"> - ${_('%s files affected with %s additions and %s deletions.') % (len(c.changeset.affected_files),c.lines_added,c.lines_deleted)} + <span> + ${_('%s files affected with %s additions and %s deletions:') % (len(c.changeset.affected_files),c.lines_added,c.lines_deleted)} </span> <div class="cs_files"> %for change,filenode,diff,cs1,cs2,stat in c.changes: @@ -139,18 +135,6 @@ YUE.onDOMReady(function(){ - YUE.on(YUQ('.diff-menu-activate'),'click',function(e){ - var act = e.currentTarget.nextElementSibling; - - if(YUD.hasClass(act,'active')){ - YUD.removeClass(act,'active'); - YUD.setStyle(act,'display','none'); - }else{ - YUD.addClass(act,'active'); - YUD.setStyle(act,'display',''); - } - }); - YUE.on(YUQ('.show-inline-comments'),'change',function(e){ var show = 'none'; var target = e.currentTarget;
--- a/rhodecode/templates/changeset/changeset_file_comment.html Sun Jan 08 16:57:56 2012 +0200 +++ b/rhodecode/templates/changeset/changeset_file_comment.html Mon Jan 09 03:48:17 2012 +0200 @@ -11,22 +11,16 @@ <img src="${h.gravatar_url(co.author.email, 20)}" /> ${co.author.username} </span> - <a href="${h.url.current(anchor='comment-%s' % co.comment_id)}"> ${_('commented on')} </a> - ${h.short_id(co.revision)} - %if co.f_path: - ${_(' in file ')} - ${co.f_path}:L ${co.line_no} - %endif <span class="date"> ${h.age(co.modified_at)} </span> + %if h.HasPermissionAny('hg.admin', 'repository.admin')() or co.author.user_id == c.rhodecode_user.user_id: + <span class="buttons"> + <span onClick="deleteComment(${co.comment_id})" class="delete-comment ui-btn">${_('Delete')}</span> + </span> + %endif </div> <div class="text"> - %if h.HasPermissionAny('hg.admin', 'repository.admin')() or co.author.user_id == c.rhodecode_user.user_id: - <div class="buttons"> - <span onClick="deleteComment(${co.comment_id})" class="delete-comment ui-btn">${_('Delete')}</span> - </div> - %endif ${h.rst_w_mentions(co.text)|n} </div> </div>
--- a/rhodecode/templates/changeset/diff_block.html Sun Jan 08 16:57:56 2012 +0200 +++ b/rhodecode/templates/changeset/diff_block.html Mon Jan 09 03:48:17 2012 +0200 @@ -15,17 +15,12 @@ ${h.link_to_if(change!='removed',h.safe_unicode(filenode.path),h.url('files_home',repo_name=c.repo_name, revision=filenode.changeset.raw_id,f_path=h.safe_unicode(filenode.path)))} </div> - <div class="diff-menu-wrapper"> - <img class="diff-menu-activate" style="margin-bottom:-6px;cursor: pointer" alt="diff-menu" src="${h.url('/images/icons/script_gear.png')}" /> - <div class="diff-menu" style="display:none"> - <ul> - <li>${h.link_to(_('diff'),h.url('files_diff_home',repo_name=c.repo_name,f_path=h.safe_unicode(filenode.path),diff2=cs2,diff1=cs1,diff='diff',fulldiff=1))}</li> - <li>${h.link_to(_('raw diff'),h.url('files_diff_home',repo_name=c.repo_name,f_path=h.safe_unicode(filenode.path),diff2=cs2,diff1=cs1,diff='raw'))}</li> - <li>${h.link_to(_('download diff'),h.url('files_diff_home',repo_name=c.repo_name,f_path=h.safe_unicode(filenode.path),diff2=cs2,diff1=cs1,diff='download'))}</li> - <li>${c.ignorews_url(h.FID(filenode.changeset.raw_id,filenode.path))}</li> - <li>${c.context_url(h.FID(filenode.changeset.raw_id,filenode.path))}</li> - </ul> - </div> + <div class="diff-actions"> + <a href="${h.url('files_diff_home',repo_name=c.repo_name,f_path=h.safe_unicode(filenode.path),diff2=cs2,diff1=cs1,diff='diff',fulldiff=1)}" title="${_('diff')}"><img class="icon" src="${h.url('/images/icons/page_white_go.png')}"/></a> + <a href="${h.url('files_diff_home',repo_name=c.repo_name,f_path=h.safe_unicode(filenode.path),diff2=cs2,diff1=cs1,diff='raw')}" title="${_('raw diff')}"><img class="icon" src="${h.url('/images/icons/page_white.png')}"/></a> + <a href="${h.url('files_diff_home',repo_name=c.repo_name,f_path=h.safe_unicode(filenode.path),diff2=cs2,diff1=cs1,diff='download')}" title="${_('download diff')}"><img class="icon" src="${h.url('/images/icons/page_white_get.png')}"/></a> + ${c.ignorews_url(h.FID(filenode.changeset.raw_id,filenode.path))} + ${c.context_url(h.FID(filenode.changeset.raw_id,filenode.path))} </div> <span style="float:right;margin-top:-3px"> <label>