Global Metrics

path: .metrics.mi.mi_sei
old: -0.6295925886884959
new: -22.499061261920712

path: .metrics.mi.mi_original
old: 23.507362444533456
new: 27.33714453322139

path: .metrics.mi.mi_visual_studio
old: 13.746995581598512
new: 15.98663422995403

path: .metrics.cyclomatic.sum
old: 11.0
new: 37.0

path: .metrics.cyclomatic.average
old: 1.0
new: 2.0555555555555554

path: .metrics.halstead.n1
old: 9.0
new: 26.0

path: .metrics.halstead.effort
old: 39468.953394065495
new: 344297.0328854794

path: .metrics.halstead.bugs
old: 0.3864107073705931
new: 1.6374483073489718

path: .metrics.halstead.volume
old: 5824.231676114651
new: 7752.908202713787

path: .metrics.halstead.N1
old: 344.0
new: 587.0

path: .metrics.halstead.difficulty
old: 6.776679841897233
new: 44.40875912408759

path: .metrics.halstead.estimated_program_length
old: 2048.2266994106412
new: 1094.6418280372604

path: .metrics.halstead.time
old: 2192.7196330036386
new: 19127.612938082188

path: .metrics.halstead.N2
old: 381.0
new: 468.0

path: .metrics.halstead.purity_ratio
old: 2.82514027504916
new: 1.0375751924523795

path: .metrics.halstead.level
old: 0.14756488772236803
new: 0.022518080210387904

path: .metrics.halstead.vocabulary
old: 262.0
new: 163.0

path: .metrics.halstead.n2
old: 253.0
new: 137.0

path: .metrics.halstead.length
old: 725.0
new: 1055.0

path: .metrics.nom.total
old: 0.0
new: 17.0

path: .metrics.nom.functions
old: 0.0
new: 17.0

path: .metrics.nexits.average
old: null
new: 1.3529411764705883

path: .metrics.nexits.sum
old: 0.0
new: 23.0

path: .metrics.cognitive.sum
old: 0.0
new: 13.0

path: .metrics.cognitive.average
old: null
new: 0.7647058823529411

path: .metrics.loc.ploc
old: 243.0
new: 206.0

path: .metrics.loc.blank
old: 62.0
new: 27.0

path: .metrics.loc.lloc
old: 0.0
new: 46.0

path: .metrics.loc.sloc
old: 476.0
new: 237.0

path: .metrics.loc.cloc
old: 171.0
new: 4.0

path: .metrics.nargs.sum
old: 0.0
new: 82.0

path: .metrics.nargs.average
old: null
new: 4.823529411764706

Spaces Data

Minimal test - lines (67, 76)

path: .spaces[5].metrics.cyclomatic.sum
old: 1.0
new: 2.0

path: .spaces[5].metrics.cyclomatic.average
old: 1.0
new: 2.0

path: .spaces[5].metrics.nexits.sum
old: 0.0
new: 2.0

path: .spaces[5].metrics.nexits.average
old: null
new: 2.0

path: .spaces[5].metrics.nom.functions
old: 0.0
new: 1.0

path: .spaces[5].metrics.nom.total
old: 0.0
new: 1.0

path: .spaces[5].metrics.nargs.average
old: null
new: 3.0

path: .spaces[5].metrics.nargs.sum
old: 0.0
new: 3.0

path: .spaces[5].metrics.halstead.length
old: 9.0
new: 59.0

path: .spaces[5].metrics.halstead.n1
old: 4.0
new: 12.0

path: .spaces[5].metrics.halstead.effort
old: 54.0
new: 2805.383626276446

path: .spaces[5].metrics.halstead.n2
old: 4.0
new: 15.0

path: .spaces[5].metrics.halstead.difficulty
old: 2.0
new: 10.0

path: .spaces[5].metrics.halstead.estimated_program_length
old: 16.0
new: 101.62290894278166

path: .spaces[5].metrics.halstead.volume
old: 27.0
new: 280.53836262764463

path: .spaces[5].metrics.halstead.bugs
old: 0.004762203155904598
new: 0.06630407956346103

path: .spaces[5].metrics.halstead.vocabulary
old: 8.0
new: 27.0

path: .spaces[5].metrics.halstead.N2
old: 4.0
new: 25.0

path: .spaces[5].metrics.halstead.time
old: 3.0
new: 155.854645904247

path: .spaces[5].metrics.halstead.N1
old: 5.0
new: 34.0

path: .spaces[5].metrics.halstead.level
old: 0.5
new: 0.1

path: .spaces[5].metrics.halstead.purity_ratio
old: 1.7777777777777777
new: 1.7224221854708757

path: .spaces[5].metrics.cognitive.average
old: null
new: 1.0

path: .spaces[5].metrics.cognitive.sum
old: 0.0
new: 1.0

path: .spaces[5].metrics.loc.sloc
old: 6.0
new: 10.0

path: .spaces[5].metrics.loc.lloc
old: 0.0
new: 3.0

path: .spaces[5].metrics.loc.cloc
old: 4.0
new: 0.0

path: .spaces[5].metrics.loc.ploc
old: 5.0
new: 10.0

path: .spaces[5].metrics.mi.mi_visual_studio
old: 72.8685057867152
new: 60.77615613653863

path: .spaces[5].metrics.mi.mi_sei
old: 151.8472295014132
new: 74.43808272363292

path: .spaces[5].metrics.mi.mi_original
old: 124.60514489528302
new: 103.92722699348106

Code

std::pair nsNativeBasicThemeGTK::ComputeScrollbarColors(
    nsIFrame* aFrame, const ComputedStyle& aStyle,
    const EventStates& aDocumentState) {
  if (ShouldUseDarkScrollbar(aFrame, aStyle)) {
    auto color = sRGBColor::FromU8(20, 20, 25, 77);
    return {color, color};
  }
  return nsNativeBasicTheme::ComputeScrollbarColors(aFrame, aStyle,
                                                    aDocumentState);
}

Minimal test - lines (37, 49)

path: .spaces[2].metrics.nom.total
old: 0.0
new: 1.0

path: .spaces[2].metrics.nom.functions
old: 0.0
new: 1.0

path: .spaces[2].metrics.nexits.average
old: null
new: 2.0

path: .spaces[2].metrics.nexits.sum
old: 0.0
new: 2.0

path: .spaces[2].metrics.cognitive.sum
old: 0.0
new: 2.0

path: .spaces[2].metrics.cognitive.average
old: null
new: 2.0

path: .spaces[2].metrics.nargs.average
old: null
new: 2.0

path: .spaces[2].metrics.nargs.sum
old: 0.0
new: 2.0

path: .spaces[2].metrics.halstead.n2
old: 11.0
new: 22.0

path: .spaces[2].metrics.halstead.n1
old: 3.0
new: 17.0

path: .spaces[2].metrics.halstead.time
old: 7.960833018847718
new: 316.29662066312517

path: .spaces[2].metrics.halstead.difficulty
old: 1.6363636363636365
new: 13.136363636363637

path: .spaces[2].metrics.halstead.vocabulary
old: 14.0
new: 39.0

path: .spaces[2].metrics.halstead.purity_ratio
old: 1.86124501335538
new: 2.043833706235077

path: .spaces[2].metrics.halstead.bugs
old: 0.009127799496822778
new: 0.1062812817339062

path: .spaces[2].metrics.halstead.estimated_program_length
old: 42.80863530717374
new: 167.5943639112763

path: .spaces[2].metrics.halstead.N2
old: 12.0
new: 34.0

path: .spaces[2].metrics.halstead.length
old: 23.0
new: 82.0

path: .spaces[2].metrics.halstead.N1
old: 11.0
new: 48.0

path: .spaces[2].metrics.halstead.level
old: 0.611111111111111
new: 0.07612456747404844

path: .spaces[2].metrics.halstead.volume
old: 87.56916320732489
new: 433.4029819467044

path: .spaces[2].metrics.halstead.effort
old: 143.29499433925892
new: 5693.3391719362535

path: .spaces[2].metrics.loc.sloc
old: 9.0
new: 13.0

path: .spaces[2].metrics.loc.ploc
old: 9.0
new: 13.0

path: .spaces[2].metrics.loc.lloc
old: 0.0
new: 4.0

path: .spaces[2].metrics.loc.cloc
old: 7.0
new: 0.0

path: .spaces[2].metrics.cyclomatic.average
old: 1.0
new: 4.0

path: .spaces[2].metrics.cyclomatic.sum
old: 1.0
new: 4.0

path: .spaces[2].metrics.mi.mi_sei
old: 134.8227541030226
new: 64.5831371650834

path: .spaces[2].metrics.mi.mi_visual_studio
old: 65.44931665184487
new: 56.69891635558963

path: .spaces[2].metrics.mi.mi_original
old: 111.91833147465472
new: 96.95514696805829

Code

nsITheme::Transparency nsNativeBasicThemeGTK::GetWidgetTransparency(
    nsIFrame* aFrame, StyleAppearance aAppearance) {
  if (aAppearance == StyleAppearance::ScrollbarVertical ||
      aAppearance == StyleAppearance::ScrollbarHorizontal) {
    auto docState = aFrame->PresContext()->Document()->GetDocumentState();
    const auto* style = nsLayoutUtils::StyleForScrollbar(aFrame);
    auto [trackColor, borderColor] =
        ComputeScrollbarColors(aFrame, *style, docState);
    Unused << borderColor;
    return trackColor.a == 1.0 ? eOpaque : eTransparent;
  }
  return nsNativeBasicTheme::GetWidgetTransparency(aFrame, aAppearance);
}

Minimal test - lines (78, 87)

path: .spaces[6].metrics.cyclomatic.sum
old: 1.0
new: 2.0

path: .spaces[6].metrics.cyclomatic.average
old: 1.0
new: 2.0

path: .spaces[6].metrics.loc.lloc
old: 0.0
new: 3.0

path: .spaces[6].metrics.loc.cloc
old: 2.0
new: 0.0

path: .spaces[6].metrics.loc.sloc
old: 4.0
new: 10.0

path: .spaces[6].metrics.loc.ploc
old: 4.0
new: 10.0

path: .spaces[6].metrics.nom.functions
old: 0.0
new: 1.0

path: .spaces[6].metrics.nom.total
old: 0.0
new: 1.0

path: .spaces[6].metrics.nexits.average
old: null
new: 2.0

path: .spaces[6].metrics.nexits.sum
old: 0.0
new: 2.0

path: .spaces[6].metrics.mi.mi_visual_studio
old: 77.52072405030886
new: 60.899990255565925

path: .spaces[6].metrics.mi.mi_sei
old: 160.101856776245
new: 74.74358255033006

path: .spaces[6].metrics.mi.mi_original
old: 132.56043812602817
new: 104.13898333701772

path: .spaces[6].metrics.halstead.length
old: 8.0
new: 58.0

path: .spaces[6].metrics.halstead.N2
old: 3.0
new: 26.0

path: .spaces[6].metrics.halstead.n2
old: 3.0
new: 16.0

path: .spaces[6].metrics.halstead.difficulty
old: 1.5
new: 7.3125

path: .spaces[6].metrics.halstead.volume
old: 20.67970000576925
new: 269.343659006934

path: .spaces[6].metrics.halstead.level
old: 0.6666666666666666
new: 0.13675213675213677

path: .spaces[6].metrics.halstead.vocabulary
old: 6.0
new: 25.0

path: .spaces[6].metrics.halstead.purity_ratio
old: 1.188721875540867
new: 1.595333189878979

path: .spaces[6].metrics.halstead.bugs
old: 0.003290806962640765
new: 0.052375377772024154

path: .spaces[6].metrics.halstead.n1
old: 3.0
new: 9.0

path: .spaces[6].metrics.halstead.estimated_program_length
old: 9.509775004326936
new: 92.5293250129808

path: .spaces[6].metrics.halstead.time
old: 1.723308333814104
new: 109.42086147156694

path: .spaces[6].metrics.halstead.N1
old: 5.0
new: 32.0

path: .spaces[6].metrics.halstead.effort
old: 31.019550008653873
new: 1969.5755064882048

path: .spaces[6].metrics.cognitive.average
old: null
new: 1.0

path: .spaces[6].metrics.cognitive.sum
old: 0.0
new: 1.0

path: .spaces[6].metrics.nargs.average
old: null
new: 4.0

path: .spaces[6].metrics.nargs.sum
old: 0.0
new: 4.0

Code

sRGBColor nsNativeBasicThemeGTK::ComputeScrollbarThumbColor(
    nsIFrame* aFrame, const ComputedStyle& aStyle,
    const EventStates& aElementState, const EventStates& aDocumentState) {
  if (ShouldUseDarkScrollbar(aFrame, aStyle)) {
    return sRGBColor::FromABGR(AdjustUnthemedScrollbarThumbColor(
        NS_RGBA(249, 249, 250, 102), aElementState));
  }
  return nsNativeBasicTheme::ComputeScrollbarThumbColor(
      aFrame, aStyle, aElementState, aDocumentState);
}

Minimal test - lines (51, 53)

path: .spaces[3].metrics.cognitive.average
old: null
new: 0.0

path: .spaces[3].metrics.nargs.average
old: null
new: 0.0

path: .spaces[3].metrics.mi.mi_sei
old: 122.12119195360312
new: 119.57777639115298

path: .spaces[3].metrics.mi.mi_visual_studio
old: 61.38159213011407
new: 79.11476873621837

path: .spaces[3].metrics.mi.mi_original
old: 104.96252254249508
new: 135.2862545389334

path: .spaces[3].metrics.nom.total
old: 0.0
new: 1.0

path: .spaces[3].metrics.nom.functions
old: 0.0
new: 1.0

path: .spaces[3].metrics.nexits.sum
old: 0.0
new: 1.0

path: .spaces[3].metrics.nexits.average
old: null
new: 1.0

path: .spaces[3].metrics.halstead.N2
old: 16.0
new: 2.0

path: .spaces[3].metrics.halstead.effort
old: 435.71788833965303
new: 90.0

path: .spaces[3].metrics.halstead.level
old: 0.3125
new: 0.3333333333333333

path: .spaces[3].metrics.halstead.N1
old: 15.0
new: 8.0

path: .spaces[3].metrics.halstead.bugs
old: 0.01915794867437241
new: 0.006694329500821694

path: .spaces[3].metrics.halstead.volume
old: 136.16184010614157
new: 30.0

path: .spaces[3].metrics.halstead.estimated_program_length
old: 74.11313393845472
new: 17.509775004326936

path: .spaces[3].metrics.halstead.vocabulary
old: 21.0
new: 8.0

path: .spaces[3].metrics.halstead.purity_ratio
old: 2.390746256079185
new: 1.7509775004326935

path: .spaces[3].metrics.halstead.time
old: 24.206549352202945
new: 5.0

path: .spaces[3].metrics.halstead.n2
old: 15.0
new: 2.0

path: .spaces[3].metrics.halstead.difficulty
old: 3.2
new: 3.0

path: .spaces[3].metrics.halstead.length
old: 31.0
new: 10.0

path: .spaces[3].metrics.loc.lloc
old: 0.0
new: 1.0

path: .spaces[3].metrics.loc.cloc
old: 7.0
new: 0.0

path: .spaces[3].metrics.loc.ploc
old: 9.0
new: 3.0

path: .spaces[3].metrics.loc.sloc
old: 12.0
new: 3.0

Code

bool nsNativeBasicThemeGTK::ThemeSupportsScrollbarButtons() {
  return StaticPrefs::widget_non_native_theme_gtk_scrollbar_allow_buttons();
}

Minimal test - lines (128, 153)

path: .spaces[8].metrics.halstead.volume
old: 1043.1881654256636
new: 718.6828600467467

path: .spaces[8].metrics.halstead.difficulty
old: 3.661764705882353
new: 13.014705882352942

path: .spaces[8].metrics.halstead.estimated_program_length
old: 429.45724820935
new: 231.57709553663932

path: .spaces[8].metrics.halstead.length
old: 168.0
new: 128.0

path: .spaces[8].metrics.halstead.time
old: 212.21720031943644
new: 519.6358914553683

path: .spaces[8].metrics.halstead.n2
old: 68.0
new: 34.0

path: .spaces[8].metrics.halstead.N2
old: 83.0
new: 59.0

path: .spaces[8].metrics.halstead.purity_ratio
old: 2.556293144103274
new: 1.809196058879995

path: .spaces[8].metrics.halstead.n1
old: 6.0
new: 15.0

path: .spaces[8].metrics.halstead.vocabulary
old: 74.0
new: 49.0

path: .spaces[8].metrics.halstead.N1
old: 85.0
new: 69.0

path: .spaces[8].metrics.halstead.bugs
old: 0.08145432252121895
new: 0.14797664466287214

path: .spaces[8].metrics.halstead.effort
old: 3819.909605749856
new: 9353.44604619663

path: .spaces[8].metrics.halstead.level
old: 0.27309236947791166
new: 0.07683615819209039

path: .spaces[8].metrics.cognitive.average
old: null
new: 0.0

path: .spaces[8].metrics.nexits.sum
old: 0.0
new: 1.0

path: .spaces[8].metrics.nexits.average
old: null
new: 1.0

path: .spaces[8].metrics.nargs.sum
old: 0.0
new: 8.0

path: .spaces[8].metrics.nargs.average
old: null
new: 8.0

path: .spaces[8].metrics.nom.functions
old: 0.0
new: 1.0

path: .spaces[8].metrics.nom.total
old: 0.0
new: 1.0

path: .spaces[8].metrics.loc.cloc
old: 56.0
new: 0.0

path: .spaces[8].metrics.loc.ploc
old: 46.0
new: 22.0

path: .spaces[8].metrics.loc.blank
old: 24.0
new: 4.0

path: .spaces[8].metrics.loc.lloc
old: 0.0
new: 3.0

path: .spaces[8].metrics.loc.sloc
old: 126.0
new: 26.0

path: .spaces[8].metrics.mi.mi_visual_studio
old: 32.778971640341545
new: 48.594298930249465

path: .spaces[8].metrics.mi.mi_original
old: 56.05204150498405
new: 83.09625117072659

path: .spaces[8].metrics.mi.mi_sei
old: 48.305532228021015
new: 44.58897692607606

path: .spaces[8].metrics.cyclomatic.average
old: 1.0
new: 4.0

path: .spaces[8].metrics.cyclomatic.sum
old: 2.0
new: 4.0

Code

bool nsNativeBasicThemeGTK::DoPaintScrollbarThumb(
    PaintBackendData& aPaintData, const LayoutDeviceRect& aRect,
    bool aHorizontal, nsIFrame* aFrame, const ComputedStyle& aStyle,
    const EventStates& aElementState, const EventStates& aDocumentState,
    DPIRatio aDpiRatio) {
  sRGBColor thumbColor =
      ComputeScrollbarThumbColor(aFrame, aStyle, aElementState, aDocumentState);

  LayoutDeviceRect thumbRect(aRect);

  {
    float factor = std::max(
        0.0f,
        1.0f - StaticPrefs::widget_non_native_theme_gtk_scrollbar_thumb_size());
    thumbRect.Deflate((aHorizontal ? aRect.height : aRect.width) * factor);
  }

  LayoutDeviceCoord radius =
      StaticPrefs::widget_non_native_theme_gtk_scrollbar_round_thumb()
          ? (aHorizontal ? thumbRect.height : thumbRect.width) / 2.0f
          : 0.0f;

  PaintRoundedRectWithRadius(aPaintData, thumbRect, thumbColor, sRGBColor(), 0,
                             radius / aDpiRatio, aDpiRatio);
  return true;
}

Minimal test - lines (55, 65)

path: .spaces[4].metrics.nom.total
old: 0.0
new: 1.0

path: .spaces[4].metrics.nom.functions
old: 0.0
new: 1.0

path: .spaces[4].metrics.loc.ploc
old: 6.0
new: 11.0

path: .spaces[4].metrics.loc.lloc
old: 0.0
new: 1.0

path: .spaces[4].metrics.loc.sloc
old: 6.0
new: 11.0

path: .spaces[4].metrics.cognitive.average
old: null
new: 0.0

path: .spaces[4].metrics.halstead.purity_ratio
old: 1.1688948554714484
new: 2.2808215992925147

path: .spaces[4].metrics.halstead.level
old: 0.6666666666666666
new: 0.1153846153846154

path: .spaces[4].metrics.halstead.bugs
old: 0.0052776320879040755
new: 0.05839264148308816

path: .spaces[4].metrics.halstead.N1
old: 9.0
new: 30.0

path: .spaces[4].metrics.halstead.time
old: 3.5
new: 128.80910407005874

path: .spaces[4].metrics.halstead.length
old: 14.0
new: 54.0

path: .spaces[4].metrics.halstead.estimated_program_length
old: 16.36452797660028
new: 123.1643663617958

path: .spaces[4].metrics.halstead.n2
old: 5.0
new: 18.0

path: .spaces[4].metrics.halstead.n1
old: 3.0
new: 13.0

path: .spaces[4].metrics.halstead.vocabulary
old: 8.0
new: 31.0

path: .spaces[4].metrics.halstead.effort
old: 63.0
new: 2318.5638732610573

path: .spaces[4].metrics.halstead.N2
old: 5.0
new: 24.0

path: .spaces[4].metrics.halstead.volume
old: 42.0
new: 267.52660076089126

path: .spaces[4].metrics.halstead.difficulty
old: 1.5
new: 8.666666666666666

path: .spaces[4].metrics.nexits.average
old: null
new: 1.0

path: .spaces[4].metrics.nexits.sum
old: 0.0
new: 1.0

path: .spaces[4].metrics.mi.mi_original
old: 122.307614583432
new: 102.63015776252456

path: .spaces[4].metrics.mi.mi_visual_studio
old: 71.52492080902456
new: 60.01763611843541

path: .spaces[4].metrics.mi.mi_sei
old: 100.85355688986772
new: 72.56680737644233

path: .spaces[4].metrics.nargs.average
old: null
new: 3.0

path: .spaces[4].metrics.nargs.sum
old: 0.0
new: 3.0

path: .spaces[4].metrics.cyclomatic.sum
old: 1.0
new: 2.0

path: .spaces[4].metrics.cyclomatic.average
old: 1.0
new: 2.0

Code

auto nsNativeBasicThemeGTK::GetScrollbarSizes(nsPresContext* aPresContext,
                                              StyleScrollbarWidth aWidth,
                                              Overlay) -> ScrollbarSizes {
  DPIRatio dpiRatio = GetDPIRatioForScrollbarPart(aPresContext);
  CSSCoord size =
      aWidth == StyleScrollbarWidth::Thin
          ? StaticPrefs::widget_non_native_theme_gtk_scrollbar_thin_size()
          : StaticPrefs::widget_non_native_theme_gtk_scrollbar_normal_size();
  LayoutDeviceIntCoord s = (size * dpiRatio).Truncated();
  return {s, s};
}

Minimal test - lines (28, 35)

path: .spaces[1].metrics.cognitive.average
old: null
new: 1.0

path: .spaces[1].metrics.cognitive.sum
old: 0.0
new: 1.0

path: .spaces[1].metrics.loc.lloc
old: 0.0
new: 4.0

path: .spaces[1].metrics.loc.cloc
old: 6.0
new: 0.0

path: .spaces[1].metrics.halstead.N2
old: 8.0
new: 14.0

path: .spaces[1].metrics.halstead.vocabulary
old: 11.0
new: 20.0

path: .spaces[1].metrics.halstead.time
old: 5.765719364395496
new: 73.95299184585042

path: .spaces[1].metrics.halstead.volume
old: 69.18863237274594
new: 155.58941141594505

path: .spaces[1].metrics.halstead.n1
old: 3.0
new: 11.0

path: .spaces[1].metrics.halstead.difficulty
old: 1.5
new: 8.555555555555555

path: .spaces[1].metrics.halstead.purity_ratio
old: 1.4377443751081735
new: 1.849529800499752

path: .spaces[1].metrics.halstead.effort
old: 103.78294855911892
new: 1331.1538532253076

path: .spaces[1].metrics.halstead.bugs
old: 0.007361439526411013
new: 0.04033644141942263

path: .spaces[1].metrics.halstead.estimated_program_length
old: 28.75488750216347
new: 66.58307281799108

path: .spaces[1].metrics.halstead.n2
old: 8.0
new: 9.0

path: .spaces[1].metrics.halstead.N1
old: 12.0
new: 22.0

path: .spaces[1].metrics.halstead.length
old: 20.0
new: 36.0

path: .spaces[1].metrics.halstead.level
old: 0.6666666666666666
new: 0.11688311688311688

path: .spaces[1].metrics.cyclomatic.sum
old: 1.0
new: 2.0

path: .spaces[1].metrics.cyclomatic.average
old: 1.0
new: 2.0

path: .spaces[1].metrics.mi.mi_original
old: 115.0514968240781
new: 110.60750011589248

path: .spaces[1].metrics.mi.mi_sei
old: 139.07812006474603
new: 84.07567962911975

path: .spaces[1].metrics.mi.mi_visual_studio
old: 67.28157709010415
new: 64.68274860578508

path: .spaces[1].metrics.nexits.sum
old: 0.0
new: 1.0

path: .spaces[1].metrics.nexits.average
old: null
new: 1.0

path: .spaces[1].metrics.nom.functions
old: 0.0
new: 1.0

path: .spaces[1].metrics.nom.total
old: 0.0
new: 1.0

path: .spaces[1].metrics.nargs.average
old: null
new: 0.0

Code

already_AddRefed do_GetBasicNativeThemeDoNotUseDirectly() {
  static StaticRefPtr gInstance;
  if (MOZ_UNLIKELY(!gInstance)) {
    gInstance = new nsNativeBasicThemeGTK();
    ClearOnShutdown(&gInstance);
  }
  return do_AddRef(gInstance);
}

Minimal test - lines (90, 125)

path: .spaces[7].metrics.cyclomatic.sum
old: 1.0
new: 8.0

path: .spaces[7].metrics.cyclomatic.average
old: 1.0
new: 8.0

path: .spaces[7].metrics.nexits.sum
old: 0.0
new: 2.0

path: .spaces[7].metrics.nexits.average
old: null
new: 2.0

path: .spaces[7].metrics.nargs.average
old: null
new: 5.0

path: .spaces[7].metrics.nargs.sum
old: 0.0
new: 5.0

path: .spaces[7].metrics.cognitive.average
old: null
new: 6.0

path: .spaces[7].metrics.cognitive.sum
old: 0.0
new: 6.0

path: .spaces[7].metrics.nom.total
old: 0.0
new: 1.0

path: .spaces[7].metrics.nom.functions
old: 0.0
new: 1.0

path: .spaces[7].metrics.halstead.bugs
old: 0.008512755447996739
new: 0.20041045089390516

path: .spaces[7].metrics.halstead.N1
old: 10.0
new: 97.0

path: .spaces[7].metrics.halstead.length
old: 18.0
new: 169.0

path: .spaces[7].metrics.halstead.difficulty
old: 2.0
new: 15.157894736842104

path: .spaces[7].metrics.halstead.estimated_program_length
old: 32.0
new: 263.42124551085624

path: .spaces[7].metrics.halstead.level
old: 0.5
new: 0.06597222222222222

path: .spaces[7].metrics.halstead.n1
old: 4.0
new: 16.0

path: .spaces[7].metrics.halstead.time
old: 7.169925001442312
new: 819.0113582026324

path: .spaces[7].metrics.halstead.N2
old: 8.0
new: 72.0

path: .spaces[7].metrics.halstead.purity_ratio
old: 1.7777777777777777
new: 1.5587055947387942

path: .spaces[7].metrics.halstead.vocabulary
old: 12.0
new: 54.0

path: .spaces[7].metrics.halstead.n2
old: 8.0
new: 38.0

path: .spaces[7].metrics.halstead.effort
old: 129.0586500259616
new: 14742.204447647384

path: .spaces[7].metrics.halstead.volume
old: 64.5293250129808
new: 972.575987865626

path: .spaces[7].metrics.loc.ploc
old: 7.0
new: 33.0

path: .spaces[7].metrics.loc.sloc
old: 7.0
new: 36.0

path: .spaces[7].metrics.loc.blank
old: 0.0
new: 3.0

path: .spaces[7].metrics.loc.cloc
old: 5.0
new: 0.0

path: .spaces[7].metrics.loc.lloc
old: 0.0
new: 10.0

path: .spaces[7].metrics.mi.mi_sei
old: 142.3293643992218
new: 33.7937457301376

path: .spaces[7].metrics.mi.mi_visual_studio
old: 68.75861565597634
new: 44.05336988882117

path: .spaces[7].metrics.mi.mi_original
old: 117.57723277171954
new: 75.33126250988421

Code

nsNativeBasicThemeGTK::GetMinimumWidgetSize(nsPresContext* aPresContext,
                                            nsIFrame* aFrame,
                                            StyleAppearance aAppearance,
                                            LayoutDeviceIntSize* aResult,
                                            bool* aIsOverridable) {
  if (!IsWidgetScrollbarPart(aAppearance)) {
    return nsNativeBasicTheme::GetMinimumWidgetSize(
        aPresContext, aFrame, aAppearance, aResult, aIsOverridable);
  }

  DPIRatio dpiRatio = GetDPIRatioForScrollbarPart(aPresContext);
  ComputedStyle* style = nsLayoutUtils::StyleForScrollbar(aFrame);
  auto sizes = GetScrollbarSizes(
      aPresContext, style->StyleUIReset()->mScrollbarWidth, Overlay::No);
  MOZ_ASSERT(sizes.mHorizontal == sizes.mVertical);
  aResult->SizeTo(sizes.mHorizontal, sizes.mHorizontal);

  if (aAppearance == StyleAppearance::ScrollbarHorizontal ||
      aAppearance == StyleAppearance::ScrollbarVertical ||
      aAppearance == StyleAppearance::ScrollbarthumbHorizontal ||
      aAppearance == StyleAppearance::ScrollbarthumbVertical) {
    CSSCoord thumbSize(
        StaticPrefs::widget_non_native_theme_gtk_scrollbar_thumb_cross_size());
    const bool isVertical =
        aAppearance == StyleAppearance::ScrollbarVertical ||
        aAppearance == StyleAppearance::ScrollbarthumbVertical;
    if (isVertical) {
      aResult->height = thumbSize * dpiRatio;
    } else {
      aResult->width = thumbSize * dpiRatio;
    }
  }

  *aIsOverridable = true;
  return NS_OK;
}

Minimal test - lines (17, 26)

path: .spaces[0].metrics.cyclomatic.sum
old: 1.0
new: 3.0

path: .spaces[0].metrics.cyclomatic.average
old: 1.0
new: 3.0

path: .spaces[0].metrics.halstead.length
old: 8.0
new: 41.0

path: .spaces[0].metrics.halstead.N1
old: 5.0
new: 27.0

path: .spaces[0].metrics.halstead.N2
old: 3.0
new: 14.0

path: .spaces[0].metrics.halstead.level
old: 0.6666666666666666
new: 0.13095238095238096

path: .spaces[0].metrics.halstead.volume
old: 20.67970000576925
new: 185.4660401983375

path: .spaces[0].metrics.halstead.difficulty
old: 1.5
new: 7.636363636363637

path: .spaces[0].metrics.halstead.vocabulary
old: 6.0
new: 23.0

path: .spaces[0].metrics.halstead.n1
old: 3.0
new: 12.0

path: .spaces[0].metrics.halstead.time
old: 1.723308333814104
new: 78.68256250838562

path: .spaces[0].metrics.halstead.bugs
old: 0.003290806962640765
new: 0.04203839039237545

path: .spaces[0].metrics.halstead.n2
old: 3.0
new: 11.0

path: .spaces[0].metrics.halstead.effort
old: 31.019550008653873
new: 1416.2861251509412

path: .spaces[0].metrics.halstead.purity_ratio
old: 1.188721875540867
new: 1.977397507650345

path: .spaces[0].metrics.halstead.estimated_program_length
old: 9.509775004326936
new: 81.07329781366414

path: .spaces[0].metrics.nom.total
old: 0.0
new: 1.0

path: .spaces[0].metrics.nom.functions
old: 0.0
new: 1.0

path: .spaces[0].metrics.nargs.average
old: null
new: 2.0

path: .spaces[0].metrics.nargs.sum
old: 0.0
new: 2.0

path: .spaces[0].metrics.loc.ploc
old: 4.0
new: 10.0

path: .spaces[0].metrics.loc.lloc
old: 0.0
new: 5.0

path: .spaces[0].metrics.loc.sloc
old: 4.0
new: 10.0

path: .spaces[0].metrics.cognitive.sum
old: 0.0
new: 2.0

path: .spaces[0].metrics.cognitive.average
old: null
new: 2.0

path: .spaces[0].metrics.mi.mi_original
old: 132.56043812602817
new: 105.8491881668766

path: .spaces[0].metrics.mi.mi_sei
old: 115.6452545698808
new: 77.31270643667624

path: .spaces[0].metrics.mi.mi_visual_studio
old: 77.52072405030886
new: 61.90011003910912

path: .spaces[0].metrics.nexits.sum
old: 0.0
new: 3.0

path: .spaces[0].metrics.nexits.average
old: null
new: 3.0

Code

static bool ShouldUseDarkScrollbar(nsIFrame* aFrame,
                                   const ComputedStyle& aStyle) {
  if (StaticPrefs::widget_disable_dark_scrollbar()) {
    return false;
  }
  if (aStyle.StyleUI()->mScrollbarColor.IsColors()) {
    return false;
  }
  return nsNativeTheme::IsDarkBackground(aFrame);
}