diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/client/client.h | 2 | ||||
-rw-r--r-- | src/client/console.c | 14 | ||||
-rw-r--r-- | src/client/demo.c | 2 | ||||
-rw-r--r-- | src/client/main.c | 12 |
4 files changed, 19 insertions, 11 deletions
diff --git a/src/client/client.h b/src/client/client.h index 187a1f4..a0a1a16 100644 --- a/src/client/client.h +++ b/src/client/client.h @@ -873,7 +873,7 @@ void Con_ClearNotify_f(void); void Con_ToggleConsole_f(void); void Con_ClearTyping(void); void Con_Close(qboolean force); -void Con_Popup(void); +void Con_Popup(qboolean force); void Con_SkipNotify(qboolean skip); void Con_RegisterMedia(void); diff --git a/src/client/console.c b/src/client/console.c index f91e527..ca3b22d 100644 --- a/src/client/console.c +++ b/src/client/console.c @@ -121,7 +121,7 @@ if user has typed something into it since the last call to Con_Popup. */ void Con_Close(qboolean force) { - if (con.mode && !force) { + if (con.mode > CON_POPUP && !force) { return; } @@ -131,7 +131,7 @@ void Con_Close(qboolean force) Key_SetDest(cls.key_dest & ~KEY_CONSOLE); con.destHeight = con.currentHeight = 0; - con.mode = CON_DEFAULT; + con.mode = CON_POPUP; con.chat = CHAT_NONE; } @@ -139,12 +139,12 @@ void Con_Close(qboolean force) ================ Con_Popup -Drop to connection screen. +Drop to connection screen. Unless `force' is true, does not change console mode to popup. ================ */ -void Con_Popup(void) +void Con_Popup(qboolean force) { - if (con.mode == CON_DEFAULT) { + if (force) { con.mode = CON_POPUP; } @@ -168,7 +168,7 @@ static void toggle_console(consoleMode_t mode, chatMode_t chat) if (cls.key_dest & KEY_CONSOLE) { Key_SetDest(cls.key_dest & ~KEY_CONSOLE); - con.mode = CON_DEFAULT; + con.mode = CON_POPUP; con.chat = CHAT_NONE; return; } @@ -1018,7 +1018,7 @@ static void Con_Say(char *msg) // don't close console after connecting static void Con_InteractiveMode(void) { - if (!con.mode) { + if (con.mode == CON_POPUP) { con.mode = CON_DEFAULT; } } diff --git a/src/client/demo.c b/src/client/demo.c index 154c5af..f57eaac 100644 --- a/src/client/demo.c +++ b/src/client/demo.c @@ -733,7 +733,7 @@ static void CL_PlayDemo_f(void) Q_strlcpy(cls.servername, COM_SkipPath(name), sizeof(cls.servername)); cls.serverAddress.type = NA_LOOPBACK; - Con_Popup(); + Con_Popup(qtrue); SCR_UpdateScreen(); // parse the first message just read diff --git a/src/client/main.c b/src/client/main.c index da290f6..e48fb13 100644 --- a/src/client/main.c +++ b/src/client/main.c @@ -407,7 +407,7 @@ void CL_CheckForResend(void) cls.passive = qfalse; - Con_Popup(); + Con_Popup(qtrue); UI_OpenMenu(UIMENU_NONE); } @@ -563,7 +563,7 @@ usage: cls.connect_time -= CONNECT_FAST; cls.connect_count = 0; - Con_Popup(); + Con_Popup(qtrue); CL_CheckForResend(); @@ -2356,6 +2356,8 @@ void CL_RestartFilesystem(qboolean total) cls.state = ca_loading; } + Con_Popup(qfalse); + UI_Shutdown(); S_StopAllSounds(); @@ -2395,6 +2397,8 @@ void CL_RestartFilesystem(qboolean total) // switch back to original state cls.state = cls_state; + Con_Close(qfalse); + CL_UpdateFrameTimes(); cvar_modified &= ~CVAR_FILES; @@ -2414,6 +2418,8 @@ void CL_RestartRefresh(qboolean total) cls.state = ca_loading; } + Con_Popup(qfalse); + S_StopAllSounds(); if (total) { @@ -2443,6 +2449,8 @@ void CL_RestartRefresh(qboolean total) // switch back to original state cls.state = cls_state; + Con_Close(qfalse); + CL_UpdateFrameTimes(); cvar_modified &= ~CVAR_FILES; |