mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-08 04:30:45 -08:00
(prev_console_mode): New variable.
(unset_kbd): Use prev_console_mode. (reset_kbd): Set prev_console_mode. Call Fset_input_mode.
This commit is contained in:
parent
05687c547b
commit
b6823b2740
1 changed files with 6 additions and 2 deletions
|
|
@ -80,6 +80,7 @@ COORD cursor_coords;
|
|||
HANDLE prev_screen, cur_screen;
|
||||
UCHAR char_attr, char_attr_normal, char_attr_reverse;
|
||||
HANDLE keyboard_handle;
|
||||
DWORD prev_console_mode;
|
||||
|
||||
|
||||
/* Setting this as the ctrl handler prevents emacs from being killed when
|
||||
|
|
@ -521,15 +522,18 @@ set_terminal_window (int size)
|
|||
void
|
||||
unset_kbd (void)
|
||||
{
|
||||
SetConsoleMode (keyboard_handle, ENABLE_PROCESSED_INPUT | ENABLE_LINE_INPUT |
|
||||
ENABLE_ECHO_INPUT | ENABLE_MOUSE_INPUT);
|
||||
SetConsoleMode (keyboard_handle, prev_console_mode);
|
||||
}
|
||||
|
||||
void
|
||||
reset_kbd (void)
|
||||
{
|
||||
keyboard_handle = GetStdHandle (STD_INPUT_HANDLE);
|
||||
GetConsoleMode (keyboard_handle, &prev_console_mode);
|
||||
SetConsoleMode (keyboard_handle, ENABLE_MOUSE_INPUT | ENABLE_WINDOW_INPUT);
|
||||
|
||||
/* Try to use interrupt input; if we can't, then start polling. */
|
||||
Fset_input_mode (Qt, Qnil, Qt, Qnil);
|
||||
}
|
||||
|
||||
typedef int (*term_hook) ();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue