From 61a45f1d49bc2bc75013205618daebc2a23e1769 Mon Sep 17 00:00:00 2001 From: Ned Batchelder Date: Sun, 31 Jan 2016 07:22:10 -0500 Subject: Clean up more of the scroll marker code --- coverage/htmlfiles/coverage_html.js | 52 +++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 28 deletions(-) (limited to 'coverage/htmlfiles/coverage_html.js') diff --git a/coverage/htmlfiles/coverage_html.js b/coverage/htmlfiles/coverage_html.js index a413f55..2fbd150 100644 --- a/coverage/htmlfiles/coverage_html.js +++ b/coverage/htmlfiles/coverage_html.js @@ -266,6 +266,9 @@ coverage.pyfile_ready = function ($) { coverage.wire_up_help_panel(); coverage.init_scroll_markers(); + + // Rebuild scroll markers after window high changing + $(window).resize(coverage.resize_scroll_markers); }; coverage.toggle_lines = function (btn, cls) { @@ -527,60 +530,53 @@ coverage.init_scroll_markers = function () { coverage.resize_scroll_markers = function () { var c = coverage, - min_height = 3, - max_height = 10, + min_line_height = 3, + max_line_height = 10, previous_line = 0, visible_window_h = $(window).height(); + $('#scroll_marker').remove(); - // Don't build markers if window hasn't scroll - if (c.body_h<=visible_window_h) { - return false; + // Don't build markers if the window has no scroll bar. + if (c.body_h <= visible_window_h) { + return; } $("body").append("
 
"); - var scroll_marker = $('#scroll_marker'); - scroll_marker.css({ - 'height':visible_window_h+'px' - }); - var header_amend = Math.round(c.header_h*scroll_marker.height()/c.body_h), + var scroll_marker = $('#scroll_marker'), + header_amend = Math.round(c.header_h*scroll_marker.height()/c.body_h), line_height = scroll_marker.height()/c.lines_len, general_height = 0; - // Line height must be between the extremums - if (line_height > min_height) { - if (line_height > max_height) { - line_height = max_height; + // Line height must be between the extremes. + if (line_height > min_line_height) { + if (line_height > max_line_height) { + line_height = max_line_height; } } - else{ - line_height = min_height; + else { + line_height = min_line_height; } c.missed_lines.each(function () { var line_position = Math.round($(this).offset().top*scroll_marker.height()/c.body_h); var id_name = $(this).attr('id'), line_number = id_name.substring(1, id_name.length); - if (line_number == parseInt(previous_line)+1) { - // If this solid missed block just make previous line higher - $('#m' + previous_line).attr('id','m' + line_number).css({ + if (line_number === parseInt(previous_line)+1) { + // If this solid missed block just make previous line higher. + $('#m' + previous_line).attr('id', 'm' + line_number).css({ 'height': "+=" + line_height }); } else { - // Add colored line in scroll_marker block + // Add colored line in scroll_marker block. scroll_marker.append('
'); $('#m' + line_number).css({ - 'height': line_height , - 'top': line_position- header_amend-general_height + 'height': line_height, + 'top': line_position - header_amend - general_height }); } - // Counters + general_height += line_height; previous_line = line_number; }); }; - -$(window).resize(function () { - // Rebuild scroll markers after window high changing - coverage.resize_scroll_markers(); -}); -- cgit v1.2.1