@@ -732,8 +732,38 @@ function Plugin(el, options)
732
732
";
733
733
}
734
734
735
+ private string GetGroupingCss(bool namespacedClasses)
736
+ {
737
+ if (namespacedClasses)
738
+ {
739
+ return "";
740
+ }
741
+ return HideGroupingCss();
742
+
743
+ }
744
+
745
+ private string HideGroupingCss()
746
+ {
747
+ return @"
748
+ coverage-info div.customizebox div:nth-child(2) { visibility:hidden;font-size:1px;height:1px;padding:0;border:0;margin:0 }
749
+ coverage-info div.customizebox div:nth-child(2) * { visibility:hidden;font-size:1px;height:1px;padding:0;border:0;margin:0 }
750
+ ";
751
+ }
752
+
753
+ private string HackGroupingToAllowAll()
754
+ {
755
+ return @"
756
+ var customizeBox = document.getElementsByClassName('customizebox')[0];
757
+ var groupingInput = customizeBox.querySelector('input');
758
+ groupingInput.max = 1;
759
+ ";
760
+
761
+ }
762
+
735
763
public string ProcessUnifiedHtml(string htmlForProcessing, string reportOutputFolder)
736
764
{
765
+ var appOptions = appOptionsProvider.Get();
766
+ var namespacedClasses = appOptions.NamespacedClasses;
737
767
reportColours = reportColoursProvider.GetColours();
738
768
return assemblyUtil.RunInAssemblyResolvingContext(() =>
739
769
{
@@ -792,10 +822,12 @@ public string ProcessUnifiedHtml(string htmlForProcessing, string reportOutputFo
792
822
}
793
823
else
794
824
{
795
- // simplify name
796
- var lastIndexOfDotInName = className.LastIndexOf('.');
797
- if (lastIndexOfDotInName != -1) @class["name"] = className.Substring(lastIndexOfDotInName).Trim('.');
798
-
825
+ if (!namespacedClasses)
826
+ {
827
+ // simplify name
828
+ var lastIndexOfDotInName = className.LastIndexOf('.');
829
+ if (lastIndexOfDotInName != -1) @class["name"] = className.Substring(lastIndexOfDotInName).Trim('.');
830
+ }
799
831
//mark with # and add the assembly name
800
832
var rp = @class["rp"].ToString();
801
833
var htmlIndex = rp.IndexOf(".html");
@@ -825,9 +857,12 @@ public string ProcessUnifiedHtml(string htmlForProcessing, string reportOutputFo
825
857
{
826
858
var assembly = riskHotspot["assembly"].ToString();
827
859
var qualifiedClassName = riskHotspot["class"].ToString();
828
- // simplify name
829
- var lastIndexOfDotInName = qualifiedClassName.LastIndexOf('.');
830
- if (lastIndexOfDotInName != -1) riskHotspot["class"] = qualifiedClassName.Substring(lastIndexOfDotInName).Trim('.');
860
+ if (!namespacedClasses)
861
+ {
862
+ // simplify name
863
+ var lastIndexOfDotInName = qualifiedClassName.LastIndexOf('.');
864
+ if (lastIndexOfDotInName != -1) riskHotspot["class"] = qualifiedClassName.Substring(lastIndexOfDotInName).Trim('.');
865
+ }
831
866
var newReportPath = $"#{assembly}{assemblyClassDelimiter}{qualifiedClassName}.html";
832
867
riskHotspot["reportPath"] = newReportPath;
833
868
}
@@ -847,19 +882,35 @@ public string ProcessUnifiedHtml(string htmlForProcessing, string reportOutputFo
847
882
table,tr,th,td {{ font-size: small; }}
848
883
body {{ -webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none }}
849
884
table.overview th, table.overview td {{ font-size: small; white-space: nowrap; word-break: normal; padding-left:10px;padding-right:10px; }}
850
- coverage-info div.customizebox div:nth-child(2) {{ visibility:hidden;font-size:1px;height:1px;padding:0;border:0;margin:0 }}
851
- coverage-info div.customizebox div:nth-child(2) * {{ visibility:hidden;font-size:1px;height:1px;padding:0;border:0;margin:0 }}
885
+ {GetGroupingCss(namespacedClasses)}
852
886
table,tr,th,td {{ border: 1px solid; font-size: small; }}
853
887
input[type=text] {{ color:{ToJsColour(reportColours.TextBoxTextColour)}; background-color:{ToJsColour(reportColours.TextBoxColour)};border-color:{ToJsColour(reportColours.TextBoxBorderColour)} }}
854
888
select {{ color:{ToJsColour(reportColours.ComboBoxTextColour)}; background-color:{ToJsColour(reportColours.ComboBoxColour)};border-color:{ToJsColour(reportColours.ComboBoxBorderColour)} }}
855
889
body, html {{ scrollbar-arrow-color:{ToJsColour(reportColours.ScrollBarArrowColour)};scrollbar-track-color:{ToJsColour(reportColours.ScrollBarTrackColour)};scrollbar-face-color:{scrollbarThumbColour};scrollbar-shadow-color:{scrollbarThumbColour};scrollbar-highlight-color:{scrollbarThumbColour};scrollbar-3dlight-color:{scrollbarThumbColour};scrollbar-darkshadow-color:{scrollbarThumbColour} }}
890
+ input[type=range]::-ms-thumb {{
891
+ background: {scrollbarThumbColour};
892
+ border: {scrollbarThumbColour}
893
+ }}
894
+ input[type=range]::-ms-track {{
895
+ color: transparent;
896
+ border-color: transparent;
897
+ background: transparent;
898
+ }}
899
+
900
+ input[type=range]::-ms-fill-lower {{
901
+ background: {ToJsColour(reportColours.ScrollBarTrackColour)};
902
+ }}
903
+ input[type=range]::-ms-fill-upper {{
904
+ background: {ToJsColour(reportColours.ScrollBarTrackColour)};
905
+ }}
856
906
</style>
857
907
</head>
858
908
");
859
909
860
910
htmlSb.Replace("</body>", $@"
861
911
<script type=""text/javascript"">
862
912
{GetStickyTableHead()}
913
+ {HackGroupingToAllowAll()}
863
914
function getRuleBySelector(cssRules,selector){{
864
915
for(var i=0;i<cssRules.length;i++){{
865
916
if(cssRules[i].selectorText == selector){{
@@ -881,12 +932,20 @@ function getStyleSheetById(id){{
881
932
}}
882
933
function {ThemeChangedJSFunctionName}(theme){{
883
934
var fccMediaStylesheet = getStyleSheetById('fccMediaStyle');
884
- var highContrastRule = fccMediaStylesheet.cssRules[1 ]
935
+ var highContrastRule = fccMediaStylesheet.cssRules[0 ]
885
936
var highContrastRules = highContrastRule.cssRules
886
937
getStyleBySelector(highContrastRules,'table.coverage > td.gray').setProperty('background-color',theme.{nameof(JsThemeStyling.GrayCoverage)});
887
938
888
939
var fccStyleSheet1Rules = getStyleSheetById('fccStyle1').cssRules;
889
940
941
+ var rangeInputFillLower = getStyleBySelector(fccStyleSheet1Rules, 'input[type=range]::-ms-fill-lower');
942
+ rangeInputFillLower.setProperty('background',theme.{nameof(JsThemeStyling.ScrollBarTrack)});
943
+ var rangeInputFillUpper = getStyleBySelector(fccStyleSheet1Rules, 'input[type=range]::-ms-fill-upper');
944
+ rangeInputFillUpper.setProperty('background',theme.{nameof(JsThemeStyling.ScrollBarTrack)});
945
+ var rangeInputThumb = getStyleBySelector(fccStyleSheet1Rules, 'input[type=range]::-ms-thumb');
946
+ rangeInputThumb.setProperty('background',theme.{nameof(JsThemeStyling.ScrollBarThumb)});
947
+ rangeInputThumb.setProperty('border',theme.{nameof(JsThemeStyling.ScrollBarThumb)});
948
+
890
949
var scrollBarStyle = getStyleBySelector(fccStyleSheet1Rules,'body, html');
891
950
scrollBarStyle.setProperty('scrollbar-arrow-color',theme.{nameof(JsThemeStyling.ScrollBarArrow)});
892
951
scrollBarStyle.setProperty('scrollbar-track-color',theme.{nameof(JsThemeStyling.ScrollBarTrack)});
0 commit comments