From 528a1617dedc45e79fc528e9c3463c3036d80714 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 2 Sep 2013 09:32:27 +0530 Subject: [PATCH] Change thumbnail cache to use a LIFO queue This should fix the problem of covers being rendered slowly at the end when scrolling through a very large number of covers very quickly. --- src/calibre/gui2/library/alternate_views.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/calibre/gui2/library/alternate_views.py b/src/calibre/gui2/library/alternate_views.py index d805a682e7..63f0dc42cd 100644 --- a/src/calibre/gui2/library/alternate_views.py +++ b/src/calibre/gui2/library/alternate_views.py @@ -10,7 +10,7 @@ import itertools, operator, os from types import MethodType from time import time from threading import Event, Thread -from Queue import Queue +from Queue import LifoQueue from functools import wraps, partial from textwrap import wrap @@ -313,7 +313,7 @@ class CoverDelegate(QStyledItemDelegate): self.animation.setDuration(500) self.set_dimensions() self.cover_cache = CoverCache(limit=gprefs['cover_grid_cache_size']) - self.render_queue = Queue() + self.render_queue = LifoQueue() self.animating = None self.highlight_color = QColor(Qt.white)