fui_core/common/rounding.rs
1pub fn round_layout_value(value: f32, dpi_scale: f32) -> f32 {
2 if (dpi_scale - 1.0f32).abs() < 0.0000015f32 {
3 value.round()
4 } else {
5 let mut new_value = (value * dpi_scale).round() / dpi_scale;
6 if new_value.is_infinite()
7 || new_value.is_nan()
8 || (std::f32::MAX - new_value) < 0.0000015f32
9 {
10 new_value = value;
11 }
12 new_value
13 }
14}