ChatPanel rewrite