diff options
author | dec05eba <dec05eba@protonmail.com> | 2020-09-28 01:54:57 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2020-09-28 01:54:57 +0200 |
commit | a16cfdc4f6cd14d576760c100a817c08f45be394 (patch) | |
tree | 8c076be0b309224e493b2b788f6e8f7f23e1ab80 /src/Body.cpp | |
parent | b9c5c06d53f5b3927e125ec46e3d1d7efcae6f12 (diff) |
Matrix: add red line at bottom of chat if we are not at the bottom
Diffstat (limited to 'src/Body.cpp')
-rw-r--r-- | src/Body.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/Body.cpp b/src/Body.cpp index c52f8ad..7af2b49 100644 --- a/src/Body.cpp +++ b/src/Body.cpp @@ -75,7 +75,8 @@ namespace QuickMedia { prev_selected_item(0), page_scroll(0.0f), item_background(sf::Vector2f(1.0f, 1.0f), 10.0f, 10), - num_visible_items(0) + num_visible_items(0), + last_item_fully_visible(true) { progress_text.setFillColor(sf::Color::White); replies_text.setFillColor(sf::Color(129, 162, 190)); @@ -394,6 +395,7 @@ namespace QuickMedia { image_fallback.setSize(thumbnail_fallback_size); item_background_shadow.setFillColor(line_seperator_color); num_visible_items = 0; + last_item_fully_visible = true; if(loading_thumbnail && load_thumbnail_future.valid() && load_thumbnail_future.wait_for(std::chrono::seconds(0)) == std::future_status::ready) { load_thumbnail_future.get(); @@ -517,10 +519,14 @@ namespace QuickMedia { if(!item->visible) continue; + float item_height = get_item_height(item.get()); + + if(after_pos.y + item_height > start_y + size.y) + last_item_fully_visible = false; + if(after_pos.y >= start_y + size.y) break; - float item_height = get_item_height(item.get()); draw_item(window, item.get(), after_pos, size, item_height, i, content_progress); after_pos.y += item_height + spacing_y; ++num_visible_items; |