diff options
author | Alexander Golubev <fatzer2@gmail.com> | 2024-02-20 20:33:48 +0300 |
---|---|---|
committer | Michele Calgaro <michele.calgaro@yahoo.it> | 2024-02-22 18:29:31 +0900 |
commit | db4080c1832fa8085e5737e6148baee7d8c3c00e (patch) | |
tree | ef9b1a76769b5b0686b3bb3e5e17ed980280747e /src/gvcore/filethumbnailview.cpp | |
parent | a5931c83bdad1b1d137cf30f5c9cf59bf3e4c8cd (diff) | |
download | gwenview-db4080c1832fa8085e5737e6148baee7d8c3c00e.tar.gz gwenview-db4080c1832fa8085e5737e6148baee7d8c3c00e.zip |
Avoid sorting items and creating thumbnails when loading metadata
Otherwice it has a big performance impact: it causes lots of
thumbnail reloads and resorts of FileThumbnailView.
Signed-off-by: Alexander Golubev <fatzer2@gmail.com>
(cherry picked from commit 53ce37eeca12badf89ebde563a8ec335e0236a02)
Diffstat (limited to 'src/gvcore/filethumbnailview.cpp')
-rw-r--r-- | src/gvcore/filethumbnailview.cpp | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/src/gvcore/filethumbnailview.cpp b/src/gvcore/filethumbnailview.cpp index e12f652..16e491d 100644 --- a/src/gvcore/filethumbnailview.cpp +++ b/src/gvcore/filethumbnailview.cpp @@ -454,15 +454,19 @@ void FileThumbnailView::insertItem(KFileItem* item) { } -void FileThumbnailView::updateView(const KFileItem* fileItem) { +void FileThumbnailView::updateView(const KFileItem* fileItem, bool metaInfoOnly) { if (!fileItem) return; - FileThumbnailViewItem* iconItem=viewItem(this, fileItem); if (iconItem) { - iconItem->setText(fileItem->text()); - updateThumbnail(fileItem); + if (metaInfoOnly) { + iconItem->updateLines(); + // Note: resort will be done when metadata is completely loaded + } else { + iconItem->setText(fileItem->text()); + updateThumbnail(fileItem); + sortView(); + } } - sort(); } @@ -565,7 +569,7 @@ void FileThumbnailView::setSorting(TQDir::SortSpec spec) { if (iconItem) setSortingKey(iconItem, item); } - TDEIconView::sort(! (spec & TQDir::Reversed) ); + sortView(); } //-------------------------------------------------------------------------- @@ -769,6 +773,10 @@ void FileThumbnailView::prefetchDone() { } } +void FileThumbnailView::sortView() { + TDEIconView::sort( !(KFileView::sorting() & TQDir::Reversed) ); +} + //-------------------------------------------------------------------------- // // Protected |