Fix storing invalid item height values in `ItemList`
The height of the last N items is incorrectly overwritten with the max height of first row (N = number of columns). This happen in the first iteration of the while loop. Moving this code inside if (all_fit) makes sure the last rows height is only updated at the end when max height (max_h) is calculated for the last row.
This commit is contained in:
parent
bdd9034ad0
commit
1533292f09
|
@ -1431,11 +1431,11 @@ void ItemList::force_update_list_size() {
|
|||
}
|
||||
}
|
||||
|
||||
for (int j = items.size() - 1; j >= 0 && col > 0; j--, col--) {
|
||||
items.write[j].rect_cache.size.y = max_h;
|
||||
}
|
||||
|
||||
if (all_fit) {
|
||||
for (int j = items.size() - 1; j >= 0 && col > 0; j--, col--) {
|
||||
items.write[j].rect_cache.size.y = max_h;
|
||||
}
|
||||
|
||||
float page = MAX(0, size.height - theme_cache.panel_style->get_minimum_size().height);
|
||||
float max = MAX(page, ofs.y + max_h);
|
||||
if (auto_height) {
|
||||
|
|
Loading…
Reference in New Issue