*/
+#ifndef KEYS_H
+#define KEYS_H
+
// these are the key numbers that should be passed to Key_Event
typedef enum {
} keynum_t;
-typedef enum {key_game, key_console, key_message, key_menu} keydest_t;
+typedef enum {key_game, key_message, key_menu} keydest_t;
-extern keydest_t key_dest;
+// key_consoleactive bits
+// user wants console (halfscreen)
+#define KEY_CONSOLEACTIVE_USER 1
+// console forced because there's nothing else active (fullscreen)
+#define KEY_CONSOLEACTIVE_FORCED 2
+extern int key_consoleactive;
+extern keydest_t key_dest;
extern char *keybindings[256];
-extern int key_repeats[256];
-extern int key_count; // incremented every key event
-extern int key_lastpress;
+extern int key_repeats[256];
+extern int key_count; // incremented every key event
+extern int key_lastpress;
void Key_Event (int key, qboolean down);
void Key_Init (void);
void Key_SetBinding (int keynum, char *binding);
void Key_ClearStates (void);
+#endif
+