Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 158 Stack Exchange communities.

What is meta?
Here's how it works:
  1. Any Stack Exchange user can ask a question
  2. The community provides support, votes on ideas, and reports bugs
  3. Your voice helps shape the way Stack Exchange operates

I have noticed chat has a couple of noticeable rendering "jitters" which are much more noticeable in firefox.

There are 2 scenarios I notice this "jitter":

  1. When entering a room with lots of messages ... particularly noticeable when the chat window is narrow. Chat messages go up and down until everything stabilizes.

  2. After new messages are posted, you sometimes get a flicker and jitters. Particularly noticeable when the window is narrow and you are the one posting the message. In Gecko based browsers it seems like the whole window may be redrawing.

Are there anythings we can do to improve this?

share|improve this question
Switch to Opera and then you can just have other problems to put up with – random Dec 30 '10 at 5:20
@random ... same jitters are reproducible in Opera, gods own browser :) – waffles Dec 30 '10 at 5:23
status-bydesign - It represents the shaking up of things – random Dec 30 '10 at 5:36
up vote 4 down vote accepted

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.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .