Part 1) was indeed a bug in the code that decides whether the small signature should be displayed next to a users' messages, or whether there's enough space to display a larger version. This is fixed now.
Part 2) is a Firefox/Gecko issue: When you remove an element from the top of the page, while being scrolled to the bottom (which is exactly what goes on when a new message comes in), this is what happens:
- Top element gets removed, causing everything else to move upwards.
- Page gets redrawn with everything having moved up
- Firefox notices that the page height has decreased. Since it was previously scrolled to the bottom, the scroll position is now further down than is actually possible, hence the scroll position has to be adjusted to be only as far on the bottom as is legal. This "adjusting" effectively means scrolling up, hence causing everything to visually move down again.
- Page gets redrawn again, looking exactly like it did before the whole thing started (because the removed element wasn't visible on screen in the first place).
The second bullet is obviously what causes the flicker.
I have reproduced this on other pages as well, so this likely isn't something that's easily worked around with tweaks to the chat DOM or CSS. And we surely do want to remove messages from the top; otherwise the browser window would keep filling up when people talk and talk.
I did this, however: Instead of removing an old message each time that a new one comes in (keeping the number of messages constant), we now allow a few more messages and remove a bunch of them at once. This doesn't fix the issue, but it causes it to appear less often.