paulfariello/aparte

Very active MUC takes a lot of CPU to redraw

Opened this issue · 2 comments

The problem is not so much about the messages but about the participants list. Whenever someone joins/leaves (which can happens several times per second in a big room) there is redraw. I sometimes see aparte taking 100% CPU so i'd consider that a bug.

Some ideas:

  • automatically hide participants if the list is bigger than drawing area (unless we can scroll it it becomes useless)
  • only display admins/mods in the participants list if it's too big
  • differentiate between immediate redraw request and lazy redraw request, so that messages & presence can be lazily redrawn maybe one time per second

Are you running a release build?
(Real solution here would be to be smarter concerning redrawing.)

I've added some debounce, and buffering to UI rendering. If you are still using Aparte, could you try a build from a133056 and tell me if the experience is better?