perf: add signal to invalidate buffers without doing layout (#5123)

This commit is contained in:
nerix
2024-01-24 18:13:31 +01:00
committed by GitHub
parent 5628605de4
commit 7604d7ea4a
7 changed files with 51 additions and 9 deletions
+7
View File
@@ -66,6 +66,10 @@ public:
// This is called, for example, when the emote scale or timestamp format has
// changed
void forceLayoutChannelViews();
// Tell a channel (or all channels if channel is nullptr) to invalidate all paint buffers
void invalidateChannelViewBuffers(Channel *channel = nullptr);
void repaintVisibleChatWidgets(Channel *channel = nullptr);
void repaintGifEmotes();
@@ -124,6 +128,9 @@ public:
// This signal fires whenever views rendering a channel, or all views if the
// channel is a nullptr, need to redo their layout
pajlada::Signals::Signal<Channel *> layoutRequested;
// This signal fires whenever views rendering a channel, or all views if the
// channel is a nullptr, need to invalidate their paint buffers
pajlada::Signals::Signal<Channel *> invalidateBuffersRequested;
pajlada::Signals::NoArgSignal wordFlagsChanged;