Animated emotes disappear after staying in an inactive window
Checklist
- [X] I'm reporting a problem with Chatterino
- [X] I've verified that I'm running the most recent nightly build or stable release
- [X] I've looked for my problem on the wiki
- [X] I've searched the issues and pull requests for similar looking reports
Describe your issue
When I keep Chatterino running in background for some time (about half an hour, maybe an hour), when I next time Alt+Tab into it, I see empty spaces instead of all the animated emotes. All the normal ones remain visible. This disappearance is not permanent; as soon as I hover mouse over amy of those empty places, all the emotes are redrawn again.
Conditions which seem to be required for reproducing the issue:
- emote animations are turned off;
- there are no new messages posted in chat during that period when I kept the Chatterino window inactive (in my case it was an offline channel).
If these conditions are not met, the issue doesn't seem to arise.
Two screenshots are attached: one is how the window normally look after posting a couple of test messages with emotes (one normal, two animated), and the second is how it looks after staying inactive for a while. (The screenshots have "2.4.0-beta" in the title, because it took a while to prepare the report, and there was no 2.4.0 final yet; but I've rechecked in the newly released 2.4.0, and it's the same there.)
This did not happen in 2.3.5; maybe because that version did not support animated emotes at all, and always showed only the first frame.
Screenshots

OS and Chatterino Version
Chatterino 2.4.0 (commit a0f93100 modified) built with Qt 5.15.2, Windows SDK, MSVC 193331631 Running on Windows 10 Version 2009, kernel: 10.0.19045
This disappearance is not permanent; as soon as I hover mouse over amy of those empty places, all the emotes are redrawn again.
Likely a side-effect of #3915 as I doubt anybody thought to disable their animated emotes, while testing it.
I'm just going to mention I do not have the issue, with animated emotes disabled the re-draw redraws exactly as expected.
I only tested this by toggling the setting on an already open version of Chatterino, in case it has some extra funkiness when the setting is disabled on startup 9d1b8b0a
OK, additional information. I repeated the test, but this time I set Always on Top flag for the Chatterino window, so that it was always visible; left it runnning for more than half an hour without ever hovering mouse over any part of it — and this time the emotes did not disappear. In my previous tests the inactive Chatterino window was hidden by other programs' windows I'm using (since I always have quite a few programs running, and most of them maximized).
My guess is, when the window is hidden by other windows, the engine (Qt?) saves resources on not redrawing it, or at least parts of it. Hence they emotes become considered "unused".
I believe this is fixed in 2.5.1 - if it's not, feel free to re-open this
No, it's not been fixed for me. I've been using 2.5.1 for about a month, and I still see all the animated emotes disappear, if the window was left open hidden in the background with no chat activity.
P. S. Sorry, I don't seen an option to reopen the issue…