Edgewall Software

Ticket #5417: trac_print_stylesheet.diff

File trac_print_stylesheet.diff, 2.4 kB (added by robert.chin@…, 15 months ago)

Print stylesheet and associated changes to use the media attribute in the href tag

  • htdocs/css/print.css

    diff -r -u -N trac_orig/htdocs/css/print.css trac_print/htdocs/css/print.css
    old new  
     1.nav { 
     2    display:none; 
     3} 
     4 
     5#banner { 
     6    display:none; 
     7} 
     8 
     9#footer { 
     10    display:none; 
     11} 
     12 
     13#altlinks { 
     14    display:none; 
     15} 
     16 
     17#prefs { 
     18    display:none; 
     19} 
  • web/chrome.py

    diff -r -u -N trac_orig/web/chrome.py trac_print/web/chrome.py
    old new  
    4545from trac.wiki.formatter import format_to, format_to_html, format_to_oneliner 
    4646 
    4747 
    48 def add_link(req, rel, href, title=None, mimetype=None, classname=None): 
     48def add_link(req, rel, href, title=None, mimetype=None, classname=None, 
     49             media=None): 
    4950    """Add a link to the chrome info that will be inserted as <link> element in 
    5051    the <head> of the generated HTML 
    5152    """ 
     
    5455    if linkid in linkset: 
    5556        return # Already added that link 
    5657 
    57     link = {'href': href, 'title': title, 'type': mimetype, 'class': classname} 
     58    link = {'href': href, 'title': title, 'type': mimetype, 'class': classname, 
     59            'media': media} 
    5860    links = req.chrome.setdefault('links', {}) 
    5961    links.setdefault(rel, []).append(link) 
    6062    linkset.add(linkid) 
    6163 
    62 def add_stylesheet(req, filename, mimetype='text/css'): 
     64def add_stylesheet(req, filename, mimetype='text/css', media=None): 
    6365    """Add a link to a style sheet to the chrome info so that it gets included 
    6466    in the generated HTML page. 
    6567     
     
    7476        href = req.href 
    7577        if not filename.startswith('/'): 
    7678            href = href.chrome 
    77     add_link(req, 'stylesheet', href(filename), mimetype=mimetype) 
     79    add_link(req, 'stylesheet', href(filename), mimetype=mimetype, media=media) 
    7880 
    7981def add_script(req, filename, mimetype='text/javascript'): 
    8082    """Add a reference to an external javascript file to the template. 
     
    352354        add_link(fakereq, 'search', req.href.search()) 
    353355        add_link(fakereq, 'help', req.href.wiki('TracGuide')) 
    354356        add_stylesheet(fakereq, 'common/css/trac.css') 
     357        add_stylesheet(fakereq, 'common/css/print.css', media='print') 
    355358        add_script(fakereq, 'common/js/jquery.js') 
    356359        add_script(fakereq, 'common/js/trac.js') 
    357360        add_script(fakereq, 'common/js/search.js')