talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit ba134c4a4056be232f7b40d9d5e162ba3296c758
parent 98b4e701430e6767bae77a7d23f5b0903959aaf8
Author: Andrej Kacian <ticho@claws-mail.org>
Date:   Fri,  8 Feb 2019 20:09:38 +0100

Show number of cleared Litehtml cache images on debug

Diffstat:
Msrc/plugins/litehtml_viewer/container_linux.cpp | 6+++++-
Msrc/plugins/litehtml_viewer/container_linux.h | 2+-
Msrc/plugins/litehtml_viewer/lh_widget.cpp | 5++++-
3 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/src/plugins/litehtml_viewer/container_linux.cpp b/src/plugins/litehtml_viewer/container_linux.cpp @@ -834,9 +834,10 @@ void container_linux::clear_images() m_images.clear(); } -void container_linux::clear_images(gint desired_size) +gint container_linux::clear_images(gint desired_size) { gint size = 0; + gint num = 0; /* First, tally up size of all the stored GdkPixbufs and * deallocate those which make the total size be above @@ -854,6 +855,7 @@ void container_linux::clear_images(gint desired_size) if (size + cursize > desired_size) { g_object_unref(img->second); img->second = NULL; + num++; } else { size += cursize; } @@ -865,6 +867,8 @@ void container_linux::clear_images(gint desired_size) return true; return false; }); + + return num; } const litehtml::tchar_t* container_linux::get_default_font_name() const diff --git a/src/plugins/litehtml_viewer/container_linux.h b/src/plugins/litehtml_viewer/container_linux.h @@ -88,7 +88,7 @@ public: /* Trim down images cache to less than desired_size [bytes], * starting from oldest stored. */ - void clear_images(gint desired_size); + gint clear_images(gint desired_size); protected: virtual void draw_ellipse(cairo_t* cr, int x, int y, int width, int height, const litehtml::web_color& color, int line_width); diff --git a/src/plugins/litehtml_viewer/lh_widget.cpp b/src/plugins/litehtml_viewer/lh_widget.cpp @@ -217,7 +217,10 @@ statusbar_pop: void lh_widget::open_html(const gchar *contents) { - clear_images(lh_prefs_get()->image_cache_size * 1024 * 1000); + gint num = clear_images(lh_prefs_get()->image_cache_size * 1024 * 1000); + + debug_print("LH: cleared %d images from image cache\n", num); + lh_widget_statusbar_push("Loading HTML part ..."); m_html = litehtml::document::createFromString(contents, this, &m_context); m_rendered_width = 0;