From 49ee8bb952ca3389446a0c488bb17db10d4c4f8c Mon Sep 17 00:00:00 2001 From: Digital Artifex <7929434+DigitalArtifex@users.noreply.github.com> Date: Thu, 18 Jun 2026 01:05:10 -0400 Subject: [PATCH] Fixed bug in reset logic --- KomplexHubPlugin/common/paginator.h | 11 +++++++++-- KomplexHubPlugin/paginators/imagepaginator.h | 1 - 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/KomplexHubPlugin/common/paginator.h b/KomplexHubPlugin/common/paginator.h index 641cbba..4d20b93 100644 --- a/KomplexHubPlugin/common/paginator.h +++ b/KomplexHubPlugin/common/paginator.h @@ -22,6 +22,7 @@ #include #include #include +#include #include "komplex_global.h" #include "slidingcachecontroller.h" @@ -197,11 +198,16 @@ protected: */ auto setOffset(qsizetype offset) -> void { - if(offset == m_offset) + if(offset == m_offset && offset != std::numeric_limits::infinity()) { return; } + if(offset == std::numeric_limits::infinity()) + { + offset = 0; + } + m_offset = offset; if(m_offset >= totalResults()) @@ -253,7 +259,6 @@ protected: { m_dataMutex.lock(); - m_offset = std::numeric_limits::infinity(); m_data.clear(); controller()->reset(); m_dataMutex.unlock(); @@ -261,6 +266,8 @@ protected: Q_EMIT totalPagesChanged(); Q_EMIT dataChanged(); Q_EMIT pageChanged(); + + setOffset(std::numeric_limits::infinity()); } private: diff --git a/KomplexHubPlugin/paginators/imagepaginator.h b/KomplexHubPlugin/paginators/imagepaginator.h index 4b548c6..1716f5a 100644 --- a/KomplexHubPlugin/paginators/imagepaginator.h +++ b/KomplexHubPlugin/paginators/imagepaginator.h @@ -89,7 +89,6 @@ public: Q_EMIT queryChanged(); reset(); - setOffset(0); } signals: