From 9151874f406c5caf723d8cd6c09f1a9029b4d038 Mon Sep 17 00:00:00 2001 From: Huon Wilson Date: Sat, 6 Sep 2014 10:35:19 +1000 Subject: [PATCH] Use more jQuery to avoid displaying Expand Description more often. Sometimes (e.g. on Rust CI) the "expand description" text of the collapse toggle was displayed by default, when a page is first loaded (even though the description is expanded), because some Content-Security-Policy settings disable inline CSS. Setting it the style with the `.css` method allows the output to be used in more places. --- src/librustdoc/html/static/main.js | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/src/librustdoc/html/static/main.js b/src/librustdoc/html/static/main.js index 7b5d1b7be2f..1ea86e84c83 100644 --- a/src/librustdoc/html/static/main.js +++ b/src/librustdoc/html/static/main.js @@ -118,7 +118,7 @@ * A function to compute the Levenshtein distance between two strings * Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported * Full License can be found at http://creativecommons.org/licenses/by-sa/3.0/legalcode - * This code is an unmodified version of the code written by Marco de Wit + * This code is an unmodified version of the code written by Marco de Wit * and was found at http://stackoverflow.com/a/18514751/745719 */ var levenshtein = (function() { @@ -224,7 +224,7 @@ }); } } else if ( - (lev_distance = levenshtein(searchWords[j], val)) <= + (lev_distance = levenshtein(searchWords[j], val)) <= MAX_LEV_DISTANCE) { if (typeFilter < 0 || typeFilter === searchIndex[j].ty) { results.push({ @@ -350,16 +350,16 @@ function validateResult(name, path, keys, parent) { for (var i=0; i < keys.length; ++i) { // each check is for validation so we negate the conditions and invalidate - if (!( + if (!( // check for an exact name match name.toLowerCase().indexOf(keys[i]) > -1 || // then an exact path match path.toLowerCase().indexOf(keys[i]) > -1 || // next if there is a parent, check for exact parent match - (parent !== undefined && + (parent !== undefined && parent.name.toLowerCase().indexOf(keys[i]) > -1) || // lastly check to see if the name was a levenshtein match - levenshtein(name.toLowerCase(), keys[i]) <= + levenshtein(name.toLowerCase(), keys[i]) <= MAX_LEV_DISTANCE)) { return false; } @@ -765,20 +765,21 @@ }); $(function() { - var toggle = "[-]"; + var toggle = $("", {'href': 'javascript:void(0)', 'class': 'collapse-toggle'}) + .html("[-]"); $(".method").each(function() { if ($(this).next().is(".docblock")) { - $(this).children().first().after(toggle); + $(this).children().first().after(toggle[0]); } }); - var mainToggle = $(toggle); - mainToggle.append("") - var wrapper = $("
"); - wrapper.append(mainToggle); + var mainToggle = + $(toggle).append( + $('', {'class': 'toggle-label'}) + .css('display', 'none') + .html(' Expand description')); + var wrapper = $("
").append(mainToggle); $("#main > .docblock").before(wrapper); });