From e85d127ae3851099cb6481ec6f0487a3661745a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Sun, 20 Dec 2020 23:11:26 +0100 Subject: [PATCH] dateMenu: Fix temperature edge case We currently format the temperature with a precision of 0, that is with no digits after the decimal-point. As a result, a temperature like -0.2 shows up as -0. Math.trunc() has the same effect as `%.0f` and handles that edge case correctly, but while at it, we can just as well round the value properly. https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3441 Part-of: --- js/ui/dateMenu.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/js/ui/dateMenu.js b/js/ui/dateMenu.js index 993d49289..33c054c12 100644 --- a/js/ui/dateMenu.js +++ b/js/ui/dateMenu.js @@ -567,7 +567,7 @@ class WeatherSection extends St.Button { ampm: false, }); const [, tempValue] = fc.get_value_temp(GWeather.TemperatureUnit.DEFAULT); - const tempPrefix = tempValue >= 0 ? ' ' : ''; + const tempPrefix = Math.round(tempValue) >= 0 ? ' ' : ''; let time = new St.Label({ style_class: 'weather-forecast-time', @@ -582,7 +582,7 @@ class WeatherSection extends St.Button { }); let temp = new St.Label({ style_class: 'weather-forecast-temp', - text: '%s%.0f°'.format(tempPrefix, tempValue), + text: '%s%d°'.format(tempPrefix, Math.round(tempValue)), x_align: Clutter.ActorAlign.CENTER, });