diff --git a/tools/reccomp/template.html b/tools/reccomp/template.html index fdc41b20..564afec7 100644 --- a/tools/reccomp/template.html +++ b/tools/reccomp/template.html @@ -115,18 +115,25 @@ } } - function filter(text) { + const filterOptions = { text: '', hidePerfect: false }; + + function filter() { closeAllDiffs(); - var ltext = text.toLowerCase(); + var ltext = filterOptions.text.toLowerCase(); const collection = document.getElementsByClassName("funcrow"); var searchCount = 0; for (var ele of collection) { var eledata = data[ele.dataset.index]; - if (text == '' + + const textOk = (ltext == '' || eledata.address.toLowerCase().includes(ltext) - || eledata.name.toLowerCase().includes(ltext)) { + || eledata.name.toLowerCase().includes(ltext)); + + const perfOk = (!filterOptions.hidePerfect || (eledata.matching < 1)); + + if (textOk && perfOk) { ele.style.display = ''; searchCount++; } else { @@ -219,9 +226,16 @@ var search = document.getElementById('search'); search.addEventListener('input', function (evt) { - filter(search.value); + filterOptions.text = search.value; + filter(); }); + const cbHidePerfect = document.getElementById('cbHidePerfect'); + cbHidePerfect.addEventListener('change', evt => { + filterOptions.hidePerfect = evt.target.checked; + filter(); + }) + sortByColumn(0); }); @@ -230,7 +244,10 @@

Decompilation Status

-
+
+ + +

AddressNameMatching