فهرست منبع

LibWeb: Correct HTMLMeterElement color selection

The logic of the comment "the region between the high boundary and the
maximum value must be treated as the optimum region" is correct.
However, the code below covered only two cases, the optimum case was
missing.
Fixes #473
simonkrauter 1 سال پیش
والد
کامیت
a676bd97a7
1فایلهای تغییر یافته به همراه3 افزوده شده و 1 حذف شده
  1. 3 1
      Userland/Libraries/LibWeb/HTML/HTMLMeterElement.cpp

+ 3 - 1
Userland/Libraries/LibWeb/HTML/HTMLMeterElement.cpp

@@ -223,7 +223,9 @@ void HTMLMeterElement::update_meter_value_element()
     }
     // Finally, if the optimum point is higher than the high boundary, then the situation is reversed; the region between the high boundary and the maximum value must be treated as the optimum region, the region from the high boundary down to the low boundary must be treated as a suboptimal region, and the remaining region must be treated as an even less good region.
     else {
-        if (value >= low && value <= high)
+        if (value >= high && value <= max)
+            m_meter_value_element->set_use_pseudo_element(CSS::Selector::PseudoElement::Type::MeterOptimumValue);
+        else if (value >= low && value <= high)
             m_meter_value_element->set_use_pseudo_element(CSS::Selector::PseudoElement::Type::MeterSuboptimumValue);
         else
             m_meter_value_element->set_use_pseudo_element(CSS::Selector::PseudoElement::Type::MeterEvenLessGoodValue);