WatchFacePineTimeStyle: Fix conditional in weather display (#1965)
Since returning a valid weather is always considered an updated value, if the current weather is empty, the face will attempt to display the temperature and icon as empty values, rather than clearing the labels.
This commit is contained in:
parent
0503248a25
commit
264b5bed43
1 changed files with 3 additions and 6 deletions
|
@ -540,7 +540,6 @@ void WatchFacePineTimeStyle::Refresh() {
|
||||||
}
|
}
|
||||||
|
|
||||||
currentWeather = weatherService.Current();
|
currentWeather = weatherService.Current();
|
||||||
|
|
||||||
if (currentWeather.IsUpdated()) {
|
if (currentWeather.IsUpdated()) {
|
||||||
auto optCurrentWeather = currentWeather.Get();
|
auto optCurrentWeather = currentWeather.Get();
|
||||||
if (optCurrentWeather) {
|
if (optCurrentWeather) {
|
||||||
|
@ -551,12 +550,10 @@ void WatchFacePineTimeStyle::Refresh() {
|
||||||
temp = temp / 100 + (temp % 100 >= 50 ? 1 : 0);
|
temp = temp / 100 + (temp % 100 >= 50 ? 1 : 0);
|
||||||
lv_label_set_text_fmt(temperature, "%d°", temp);
|
lv_label_set_text_fmt(temperature, "%d°", temp);
|
||||||
lv_label_set_text(weatherIcon, Symbols::GetSymbol(optCurrentWeather->iconId));
|
lv_label_set_text(weatherIcon, Symbols::GetSymbol(optCurrentWeather->iconId));
|
||||||
lv_obj_realign(temperature);
|
} else {
|
||||||
lv_obj_realign(weatherIcon);
|
lv_label_set_text(temperature, "--");
|
||||||
|
lv_label_set_text(weatherIcon, Symbols::ban);
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
lv_label_set_text(temperature, "--");
|
|
||||||
lv_label_set_text(weatherIcon, Symbols::ban);
|
|
||||||
lv_obj_realign(temperature);
|
lv_obj_realign(temperature);
|
||||||
lv_obj_realign(weatherIcon);
|
lv_obj_realign(weatherIcon);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue