aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2021-06-05 13:20:02 +0200
committerdec05eba <dec05eba@protonmail.com>2021-06-05 13:20:02 +0200
commitcbcdbdbf488b73120b2b604343ac64213cdbb1f8 (patch)
tree49cf0df042dda352390b6819d0d283fdf536f4a9 /src
parent36eb5c400096cd5009d12496ddbeeaac0daf2de0 (diff)
Improve card handler, less computation
Diffstat (limited to 'src')
-rw-r--r--src/Body.cpp8
-rw-r--r--src/QuickMedia.cpp2
2 files changed, 6 insertions, 4 deletions
diff --git a/src/Body.cpp b/src/Body.cpp
index 209ba6d..01ae8b7 100644
--- a/src/Body.cpp
+++ b/src/Body.cpp
@@ -1142,9 +1142,8 @@ namespace QuickMedia {
if(item_index == selected_item)
selected_column = drawn_column_index;
- handle_item_render(pos + pos_offset, card_width, card_height, item_index);
-
if(item->visible && pos_offset.y + card_height > -body_spacing[body_theme].body_padding_vertical && pos_offset.y < size.y) {
+ handle_item_render(pos + pos_offset, card_width, card_height, item_index);
sf::View new_view(sf::FloatRect(0.0f, 0.0f, window_size.x, size.y));
new_view.setViewport(sf::FloatRect(0.0f, scissor_y / (float)window_size.y, 1.0f, size.y / (float)window_size.y));
window.setView(new_view);
@@ -1157,7 +1156,7 @@ namespace QuickMedia {
item_background.draw(window);
{
- get_item_height(item, card_max_image_size.x);
+ get_item_height(item, card_max_image_size.x, true, false, false, item_index);
sf::Vector2i thumbnail_size = get_item_thumbnail_size(item);
std::shared_ptr<ThumbnailData> item_thumbnail;
if(draw_thumbnails && !item->thumbnail_url.empty())
@@ -1249,6 +1248,9 @@ namespace QuickMedia {
if(last_visible_item == -1 || item_index > last_visible_item)
last_visible_item = item_index;
} else {
+ if(item_index == selected_item)
+ handle_item_render(pos + pos_offset, card_width, card_height, item_index);
+
if(item->keep_alive_frames == 0) {
clear_body_item_cache(item);
// TODO: Make sure the embedded item is not referencing another item in the |items| list
diff --git a/src/QuickMedia.cpp b/src/QuickMedia.cpp
index 68a86e0..48d73d5 100644
--- a/src/QuickMedia.cpp
+++ b/src/QuickMedia.cpp
@@ -1056,7 +1056,7 @@ namespace QuickMedia {
}
if(strcmp(plugin_name, "launcher") == 0) {
- auto pipe_body = create_body();
+ auto pipe_body = create_body(true);
pipe_body->items.push_back(create_launcher_body_item("4chan", "4chan", resources_root + "icons/4chan_launcher.png"));
pipe_body->items.push_back(create_launcher_body_item("Manga (all)", "manga", ""));
pipe_body->items.push_back(create_launcher_body_item("Mangadex", "mangadex", resources_root + "icons/mangadex_launcher.png"));