On Sun, 23 Aug 2009, Giuseppe Bilotta wrote: > Since 4afbaefffa9095fe1391b4b61289a7dc954e9f7b ref markers that > accompain the subject in views such as shortlog and history point to > something different from the subject itself. Therefore, they should not > be included in the same <a> tag. > > Benefits of the change are: > * better compliance to the XHTML standards, that forbid links within > links even though the restriction cannot be imposed via DTD; this also > benefits visualization in some older browsers; Yes, some older browsers (like Mozilla 1.7.12, Gecko/20050923) did _enforce_ that requirement when served document with XHTML DOCTYPE, and application/xml+xhtml Content-Type, by moving inner link (A element) just outside (just after) outer, containing <a> element. For format_subject_html which you are fixing, and which is used by 'shortlog', 'history' and 'tags' views this didn't cause much changes in layout. But the way gitweb uses git_print_header_div in views such as 'tree', 'blob' etc., where the outer (containing) link is made into *block* element[1] by the way of CSS (display: block) makes layout (visualisation) very screwed up in older browser. But I don't expect you to fix that. [1] Originally so the area to click is larger. > * when hovering the subject, only the subject itself is underlined; when > hovering the ref markers, only the text in the hovered ref marker is > underlined; previously, hovering any written part of the subject > column led to complete underlying of everything at the same time, > with unpleasing effects. Signoff? Acked-by: Jakub Narebski <jnareb@xxxxxxxxx> > --- > gitweb/gitweb.perl | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > The next step would be to find a way to layout decently the case when > some shortlog entries have a _humongous_ amount of ref markers. See > for example http://git.oblomov.eu/acecad/shortlog > > I honestly doubt these cases happen in normal git repositories, but it > might still be worth taking them into consideration. Possibilities > include hard-limiting the title column maximum width (in browsers for > which the corresponding attributes and rules work), manual insertion of > hard line breaks <br/> every n-th ref marker, or something more dynamic > such as hiding most of the ref markers when they are more than, say, 5, > and showing them on hover. > > Suggestions? Comments? Perhaps limiting to heads and tags if there are too many refs? > > diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl > index ce6e8f6..bb9648b 100755 > --- a/gitweb/gitweb.perl > +++ b/gitweb/gitweb.perl > @@ -1524,10 +1524,10 @@ sub format_subject_html { > $long =~ s/[[:cntrl:]]/?/g; > return $cgi->a({-href => $href, -class => "list subject", > -title => to_utf8($long)}, > - esc_html($short) . $extra); > + esc_html($short)) . $extra; > } else { > return $cgi->a({-href => $href, -class => "list subject"}, > - esc_html($long) . $extra); > + esc_html($long)) . $extra; > } > } > > -- > 1.6.3.rc1.192.gdbfcb > > -- Jakub Narebski Poland -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html