diff --git a/src/Screens.c b/src/Screens.c index 3bdc48bb2..93f64ed3d 100644 --- a/src/Screens.c +++ b/src/Screens.c @@ -1086,6 +1086,9 @@ static void ChatScreen_ChatReceived(void* screen, const cc_string* msg, int type s->dirty = true; if (type == MSG_TYPE_NORMAL) { + /* Check if the chatIndex isn't located at the bottom of the chat log, that means that the user has scrolled. */ + if (Chat_Log.count - s->chatIndex != Gui.Chatlines + 1) return; + s->chatIndex++; if (!Gui.Chatlines) return; TextGroupWidget_ShiftUp(&s->chat);