fix: set maximum of scrollbar after filtering (#5329)

This commit is contained in:
nerix 2024-04-17 19:08:47 +02:00 committed by GitHub
parent c391ff9740
commit b391f18177
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 14 additions and 10 deletions

View file

@ -9,6 +9,7 @@
- Bugfix: Fixed split tooltip getting stuck in some cases. (#5309)
- Bugfix: Fixed the version string not showing up as expected in Finder on macOS. (#5311)
- Bugfix: Fixed links having `http://` added to the beginning in certain cases. (#5323)
- Bugfix: Fixed a gap appearing when using filters on `/watching`. (#5329)
## 2.5.0-beta.1

View file

@ -24,14 +24,6 @@ public:
private:
/// Property Accessors
/**
* @brief Return the limit of the internal buffer
*/
[[nodiscard]] size_t limit() const
{
return this->limit_;
}
/**
* @brief Return the amount of space left in the buffer
*
@ -43,6 +35,14 @@ private:
}
public:
/**
* @brief Return the limit of the queue
*/
[[nodiscard]] size_t limit() const
{
return this->limit_;
}
/**
* @brief Return true if the buffer is empty
*/

View file

@ -982,8 +982,7 @@ void ChannelView::setChannel(const ChannelPtr &underlyingChannel)
// and the ui.
auto snapshot = underlyingChannel->getMessageSnapshot();
this->scrollBar_->setMaximum(qreal(snapshot.size()));
size_t nMessagesAdded = 0;
for (const auto &msg : snapshot)
{
if (!this->shouldIncludeMessage(msg))
@ -1007,12 +1006,16 @@ void ChannelView::setChannel(const ChannelPtr &underlyingChannel)
this->messages_.pushBack(messageLayout);
this->channel_->addMessage(msg);
nMessagesAdded++;
if (this->showScrollbarHighlights())
{
this->scrollBar_->addHighlight(msg->getScrollBarHighlight());
}
}
this->scrollBar_->setMaximum(
static_cast<qreal>(std::min(nMessagesAdded, this->messages_.limit())));
//
// Standard channel connections
//