diff --git a/src/hu_stuff.c b/src/hu_stuff.c
index 772d1cd587c425da163d1ea57a130e94245a9fd2..d5da234d56a6dfa426e346c75e42bc6ceda2eeec 100644
--- a/src/hu_stuff.c
+++ b/src/hu_stuff.c
@@ -1496,6 +1496,9 @@ static void HU_drawMiniChat(void)
 
 	y = chaty - charheight*(msglines+1);
 
+	if (cv_alwaysdisplayinput.value)
+		y -= 20;
+
 	/*if (splitscreen)
 	{
 		y -= BASEVIDHEIGHT/2;
diff --git a/src/st_stuff.c b/src/st_stuff.c
index e0e014712592c350440d36e806427fad7435c1db..6fbf1dc6a85a109f7583be678d0ae6fb433500b5 100644
--- a/src/st_stuff.c
+++ b/src/st_stuff.c
@@ -2689,7 +2689,7 @@ static void ST_overlayDrawer(void)
 
 	if (!(netgame || multiplayer) || !hu_showscores)
 	{
-		if (! modeattacking && cv_alwaysdisplayinput.value)
+		if (!( modeattacking || chat_on ) && cv_alwaysdisplayinput.value)
 			ST_drawInput();
 #ifdef HAVE_BLUA
 		LUAh_GameHUD(stplyr);